标签:
1、使用session的get方法
1 public User getUser(int id){ 2 Session session = null; 3 User user = null; 4 try { 5 session = HibernateUtils.getSession(); 6 /*根据主键获取一条记录*/ 7 user = (User) session.get(User.class,id); 8 }finally { 9 if (session != null){ 10 session.close(); 11 } 12 } 13 return user; 14 }
2、使用HQL语言查询 Query
1 public User getUserBynName(String name){ 2 User user = null; 3 Session session = null; 4 try { 5 session = HibernateUtils.getSession(); 6 /*这里查的是User对象,不是user表,支持多态*/ 7 String hql = " FROM User as user WHERE user.name = :name "; 8 Query query = session.createQuery(hql); 9 query.setString("name",name); 10 /*只返回一条记录,否则报错*/ 11 user = (User) query.uniqueResult(); 12 }finally { 13 if (session != null){ 14 session.close(); 15 } 16 } 17 return user; 18 } 19 20 public List<User> getUsersByName(String name){ 21 List<User> users = null; 22 Session session = null; 23 try { 24 session = HibernateUtils.getSession(); 25 /*这里查的是User对象,不是user表,支持多态*/ 26 String hql = " FROM User as user WHERE user.name LIKE :name "; 27 Query query = session.createQuery(hql); 28 query.setString("name",name+"%"); 29 query.setFirstResult(10); 30 query.setMaxResults(5); 31 users = query.list(); 32 }finally { 33 if (session != null){ 34 session.close(); 35 } 36 } 37 return users; 38 }
3、使用条件查询 Criteria
1 public User getUserByNameCri(String name){ 2 Session session = null; 3 User user = null; 4 try { 5 session = HibernateUtils.getSession(); 6 /*条件查询*/ 7 Criteria criteria = session.createCriteria(User.class); 8 /*添加约束条件*/ 9 criteria.add(Restrictions.eq("name",name)); 10 user = (User) criteria.uniqueResult(); 11 }finally { 12 if (session != null){ 13 session.close(); 14 } 15 } 16 return user; 17 }
标签:
原文地址:http://www.cnblogs.com/sherrykid/p/4586766.html