Book 实体类及注解
package cn.entity; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.SequenceGenerator; import javax.persistence.Table; /** * BOOK 实体类 */ @Entity @Table(name="BOOK") public class Book { @Id @GeneratedValue(generator="BOOK_SEQ",strategy=GenerationType.SEQUENCE) @SequenceGenerator(name="BOOK_SEQ",sequenceName="BOOK_SEQ",allocationSize=1,initialValue=1) private int id;//编号 @Column private String isbn;//书号 @Column private String title;//标题 @Column private double price;//价格 @Column private Date pubdate;//出版日期 @Column private String intro;//简介 public Book() { } public Book(String isbn, String title, double price, Date pubdate, String intro) { this.isbn = isbn; this.title = title; this.price = price; this.pubdate = pubdate; this.intro = intro; } public Book(int id, String isbn, String title, double price, Date pubdate, String intro) { this.id = id; this.isbn = isbn; this.title = title; this.price = price; this.pubdate = pubdate; this.intro = intro; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getIsbn() { return isbn; } public void setIsbn(String isbn) { this.isbn = isbn; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public Date getPubdate() { return pubdate; } public void setPubdate(Date pubdate) { this.pubdate = pubdate; } public String getIntro() { return intro; } public void setIntro(String intro) { this.intro = intro; } }
Test 测试类
package cn.test; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.hibernate.Criteria; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.criterion.Order; import cn.entity.Book; import cn.util.HibernateSessionFactory; public class Test { public static void main(String[] args) { Test test = new Test(); // save(); // System.out.println(test.findTotal()); // List<Book> books = new ArrayList<Book>(); // books = test.findPageBooks(1, 2, "title", "asc"); // for (Book book : books) { // System.out.println(book.getId()+" "+book.getTitle()+" "+book.getPubdate()); // } // Book book = new Book("345345-232-132", "Java编程思想2", 99.00, new Date(), "一本全面介绍Java的书籍,适合任何层次的读者"); // int id = test.addBook(book); // System.out.println("这是添加的结果"+id); // System.out.println("这是删除的结果"+test.deleteBook(108)); // Book book = new Book(104,"345345-232-132", "Java编程思想2", 99.00, new Date(), "一本全面介绍Java的书籍,适合任何层次的读者"); // int id = test.updateBook(book); // System.out.println("这是修改的结果"+id); } private static void save() { Book book = new Book("345345-232-132", "Java编程思想", 99.00, new Date(), "一本全面介绍Java的书籍,适合任何层次的读者"); Session session=HibernateSessionFactory.getSession(); Transaction tx=null; try { tx=session.beginTransaction(); session.save(book); tx.commit(); } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } } public long findTotal(){ Session session=HibernateSessionFactory.getSession(); Long count = (Long)session.createQuery("select count(*) from Book").uniqueResult(); return count; } public List<Book> findPageBooks(final int pageIndex, final int pageSize, final String sort, final String order){ Session session=HibernateSessionFactory.getSession(); Criteria criteria = session.createCriteria(Book.class); if("desc".equals(order)){ criteria.addOrder(Order.desc(sort)); }else{ criteria.addOrder(Order.asc(sort)); } criteria.setFirstResult(pageIndex).setMaxResults(pageSize); List<Book> books = criteria.list(); HibernateSessionFactory.closeSession(); return books; } public int addBook(Book book){ Session session=HibernateSessionFactory.getSession(); Transaction tx=null; int id = 0; try { tx=session.beginTransaction(); id = (Integer)session.save(book); tx.commit(); } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } return id; } public int deleteBook(int id){ Session session=HibernateSessionFactory.getSession(); Transaction tx = null; int num = 0; try { tx=session.beginTransaction(); Book book = new Book(); book.setId(id); session.delete(book); tx.commit(); num = 1; } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } return num; } public int updateBook(Book book){ Session session=HibernateSessionFactory.getSession(); Transaction tx = null; int id = 0; try { tx=session.beginTransaction(); session.update(book); tx.commit(); id = 1; } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } return id; } }
BookDao 数据访问层
package cn.dao; import java.util.List; import cn.entity.Book; /** * Book 数据访问层接口 * */ public interface BookDao { /** * 查询共有多少记录 * * @return */ public long findTotal(); /** * 查询一页的数据 * * @param begin 从哪条开始 0 * @param end 得到多少条 * @param sort 排序的列 * @param order 排序的方式 desc/asc * @return */ public List<Book> findPageBooks(final int begin, final int end, final String sort, final String order); /** * 增加一条数据 * * @param book 传来的参数不包括 id * @return */ public int addBook(Book book); /** * 删除一条数据 * * @param id 根据 id 作删除 * @return */ public int deleteBook(int id); /** * 修改一条数据 * * @param book 传来的参数包括 id * @return */ public int updateBook(Book book); }
package cn.dao.impl; import java.util.List; import org.hibernate.Criteria; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.criterion.Order; import cn.dao.BookDao; import cn.entity.Book; import cn.util.HibernateSessionFactory; /** * Book 数据访问层实现 * */ public class BookDaoImpl implements BookDao { /** * 查询共有多少记录 * * @return */ public long findTotal(){ Session session=HibernateSessionFactory.getSession(); Long count = (Long)session.createQuery("select count(*) from Book").uniqueResult(); return count; } /** * 查询一页的数据 * * @param begin 从哪条开始 0 * @param end 得到多少条 * @param sort 排序的列 * @param order 排序的方式 desc/asc * @return */ public List<Book> findPageBooks(final int begin, final int end, final String sort, final String order){ Session session=HibernateSessionFactory.getSession(); Criteria criteria = session.createCriteria(Book.class); if("desc".equals(order)){ criteria.addOrder(Order.desc(sort)); }else{ criteria.addOrder(Order.asc(sort)); } criteria.setFirstResult(begin).setMaxResults(end); List<Book> books = criteria.list(); HibernateSessionFactory.closeSession(); return books; } /** * 增加一条数据 * * @param book 传来的参数不包括 id * @return */ public int addBook(Book book){ Session session=HibernateSessionFactory.getSession(); Transaction tx=null; int id = 0; try { tx=session.beginTransaction(); id = (Integer)session.save(book); tx.commit(); } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } return id; } /** * 删除一条数据 * * @param id 根据 id 作删除 * @return */ public int deleteBook(int id){ Session session=HibernateSessionFactory.getSession(); Transaction tx = null; int num = 0; try { tx=session.beginTransaction(); Book book = new Book(); book.setId(id); session.delete(book); tx.commit(); num = 1; } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } return num; } /** * 修改一条数据 * * @param book 传来的参数包括 id * @return */ public int updateBook(Book book){ Session session=HibernateSessionFactory.getSession(); Transaction tx = null; int id = 0; try { tx=session.beginTransaction(); session.update(book); tx.commit(); id = 1; } catch (HibernateException e) { e.printStackTrace(); tx.rollback(); }finally{ HibernateSessionFactory.closeSession(); } return id; } }
BookBiz 业务逻辑层
package cn.biz; import java.util.List; import cn.entity.Book; /** * Book 业务逻辑层接口 * */ public interface BookBiz { public long findTotal(); /** * 查询一页的数据 * * @param pageIndex 从哪页开始 * @param pageSize 得到的页数 * @param sort 排序的列 * @param order 排序的方式 desc/asc * @return */ public List<Book> findPageBooks(final int pageIndex, final int pageSize, final String sort, final String order); public int addBook(Book book); public int deleteBook(int id); public int updateBook(Book book); }
package cn.biz.impl; import java.util.List; import cn.biz.BookBiz; import cn.dao.BookDao; import cn.dao.impl.BookDaoImpl; import cn.entity.Book; /** * Book 业务逻辑层实现 * */ public class BookBizImpl implements BookBiz { private BookDao bookDao = new BookDaoImpl(); public long findTotal() { return bookDao.findTotal(); } /** * 查询一页的数据 * * @param pageIndex 当前页号 * @param pageSize 页面大小 * @param sort 排序的列 * @param order 排序的方式 desc/asc * @return */ public List<Book> findPageBooks(int pageIndex, int pageSize, String sort, String order) { int begin = (pageIndex - 1)*pageSize; return bookDao.findPageBooks(begin, pageSize, sort, order); } public int addBook(Book book) { return bookDao.addBook(book); } public int deleteBook(int id) { return bookDao.deleteBook(id); } public int updateBook(Book book) { return bookDao.updateBook(book); } }
相关推荐
struts2+ajax+easyui+json+datagrid增,删,改,查,分页,排序,有数据库
NULL 博文链接:https://chaoyi.iteye.com/blog/2163947
使用maven插件管理jar包 采用struts2+easyui 实现可编辑表格datagrid
struts2+easyUI+ajax+json用户登验证,代码没问题,可运行,适合初学者理解原理!
easyui+springMVC+hibernate练习,实现为课程表。
使用JDBC实现数据库工具类,使用工具类连接数据库,使用EasyUI连接后台实现数据表格的展示和分页功能
WPF MVVM DataGrid分页案例 运用数据绑定 Command 可作为MVVM学习使用
struts1.3+spring2+Hibernate json,easyui datagird 学习easyui 做的一个小例子
本文给大家分享jQuery EasyUI编辑DataGrid用combobox实现多级联动效果的实例代码,代码简单易懂,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
WPF结合MVVM绑定Datagrid,网上凑了很久才搞定,发现很多都是有问题的,终于解决了。用vs2019打开最好。里面实现了增加、删除、修改、以及单击之后显示数据。
本实例是以Wcf项目为服务端,Silverligth项目中添加DataGrid控件,来调用服务端的Wcf服务连接数据库,读取数据后再在DataGrid中呈现出来;初学者,希望可以帮到您!
SSM+EasayUI-DataGrid表格展现数据库数据。包含后台代码和数据库建表语句
使用SSM框架+EasyUI DataGrid数据表格实现了基本的增删改查,以及对数据分页,排序功能的实现。是一个对于后台管理的很好的例子,因为一般企业后台管理都是使用EasyUI等框架快速搭建,而且DataGrid是EasyUI最重要的...
通过RIA Service进行SQL数据库的连接,网上资源并不多,也不详细,这里我只提供一个显示,方便初学者学习,数据库我就不加了,有什么数据都可以,别忘了安装RIA Service toolkit这个东东,还有就是datagrid把...
easyui的输入框+验证+弹窗,datagrid的渲染+勾选/选择+双击+渲染行操作+查询框架。
vb.net+access管理系统中DataGrid查询数据导出到excel的代码
ado+datagrid+access 访问数据库
数据库管理系统,不管是桌面版,还是网页版,我觉得最重要的功能是:增删改查+分页。文档里面的例子就是asp.net web form + easy ui 的datagrid。简单的演示了这五个重要功能。请用vs2010运行,数据库没有给出。
2. View:View很好理解,就是视图界面。 3. ViewModel:上面说过Model抽象,那么ViewModel就是对View的抽象。显示的数据对应着ViewMode中的Property,执行的命令对应着ViewModel中的Command。 (通过一个例子来解释...
silverlight 4 + vs 2010 + xp 实现了dataGrid双击一行响应事件,代码大不份来自网络,自己做了个Dome 免分下载