- import java.util.List;
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.Transaction;
- import org.hibernate.cfg.Configuration;
- import org.hibernate.query.Query;
- import demo.entity.User;
- @Test //简单查询所有
- public void testGetUser(){
- // TODO Auto-generated method stub
- SessionFactory sf = null;
- Session session = null;
- Transaction ts = null;
- try {
- sf = hibernateUtil.getSessionFactory();
- //用getCurrentSession创建的Session实例只属于当前线程
- session = sf.getCurrentSession();
- ts = session.beginTransaction();
- Criteria criteria = session.createCriteria(User.class);
- List users = criteria.list();
- for(int i=0;i<users.size();i++)
- {
- User user =(User)users.get(i);
- System.out.println(i+"--"+user.getUsername());
- }
- ts.commit();
- } catch (HibernateException e) {
- // TODO Auto-generated catch block
- if(ts != null)
- {
- ts.rollback();
- }
- e.printStackTrace();
- }
- }
- }
import java.util.List;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.query.Query;
import demo.entity.User;
@Test //简单查询所有
public void testGetUser(){
// TODO Auto-generated method stub
SessionFactory sf = null;
Session session = null;
Transaction ts = null;
try {
sf = hibernateUtil.getSessionFactory();
//用getCurrentSession创建的Session实例只属于当前线程
session = sf.getCurrentSession();
ts = session.beginTransaction();
Criteria criteria = session.createCriteria(User.class);
List users = criteria.list();
for(int i=0;i<users.size();i++)
{
User user =(User)users.get(i);
System.out.println(i+"--"+user.getUsername());
}
ts.commit();
} catch (HibernateException e) {
// TODO Auto-generated catch block
if(ts != null)
{
ts.rollback();
}
e.printStackTrace();
}
}
}
结果:
HQL(Hibernate Query Language)是完全面对对象的查询语句,查询功能强大,具备继承、多态和关联等特性。
Query是Hibernate的查询接口,用于从数据存储源查询对象及控制执行查询的过程,Query包装了一个HQL语句。
hibernate5中 org.hibernate.Query 被 org.hibernate.query.Query 替代。