1,OID
如:session.get(Class,OID);session.load(Class,OID);
2,对象导航
如:Country country = session.get(Country.class,1L);
List<Province> provinces = country.getProvince();
3,HQL(HIbernate Query Language)
如:Query query = session.createQuery("from Customer where custId>:id");
query .setLong("id",id);
List<Customer> list = query.list();
4,QBC(Query By Criteria):Restrictions类提供了一系列用于设定查询条件的静态方法;Projection:查询投影
如:Criteria criteria = session.CreateCriteria(Customer);
criteria.add(Restrictions.like("%测试%"));
List<Customer> list = criteria.list();
DetachedCriteria:离线查询,应用:分页,在web层封装条件,到dao层执行。
5,SQL
如:SQLQuery query = session.createSQL("select * from Customer");
List<Cutomer> list = query.list();
Query中的方法说明:
1,list();用户查询语句,返回结果是一个List集合
2,uniqueResult();用于查询语句,返回结果是一个Object对象;
3,setter方法;用户设置查询语句的参数值,针对于不同的数据类型,需要用到不同的setter方法
4,setFirstResult(int arg0)+setMaxResults(int arg0);实现分页查询,setFirstResult为起始索引;setMaxResults为结果集的最大记录数