在上面几篇BLOG中我们分别简单的讲述了hibernate是如何进行CRUD的。 这篇我们将这些综合起来分别操作一下:目的是将他们总结备份一下、请看代码: 一、 设计拿到session的类HibernateUtils public class HibernateUtils { private static SessionFactory sf; private static Session s; //静态设计模式在初始化的时候加载 static{ Configuration con = new Configuration(); con.configure(); sf = con.buildSessionFactory(); } //获取对象的方法 public static Session getS() { s = sf.openSession(); return s; } } 二、 利用hibernate提供的接口进行CRUD操作: private static Session s = HibernateUtils.getS(); private List<User> list; //面向对象的查询方法QueryByCriteria public List<User> QueryByCriteria() { Criteria c = s.createCriteria(User.class); c.add(Restrictions.eq("name", "zhanglei")); list = c.list(); return list; } //hql的查询方法 public List<User> QueryByHql() { String hql = "from User where name=?"; Query q = s.createQuery(hql); q.setString(0,"zhanglei"); list = q.list(); return list; } //通配符的查询方法 public List<User> QueryByTongPei() { String tongpei = "from User where name=:m"; Query q = s.createQuery(tongpei); q.setString("m", "zhanglei"); list = q.list(); return list; } //添加用户的方法 public void UserAdd() { Transaction tx = s.beginTransaction(); User user = new User(); user.setName("zhanglei"); user.setPass("pass"); s.save(user); tx.commit(); } //删除用户的方法 public void UserDelete() { Transaction tx = s.beginTransaction(); User user = (User) s.get(User.class, 1); s.delete(user); tx.commit(); } //更新用户的方法 public void UserUpdate() { Transaction tx = s.beginTransaction(); User user = (User) s.get(User.class, 12); user.setName("zhanglong"); s.update(user); tx.commit(); } 补充: 分页的set方法: q.setFirstResult(currentPage); q.setMaxResults(pagesize);