由于以前没有接触过Hibernate而且近期又经常要用到,所以先在次记录下来以便以后的不时之需。
Hibernate支持符合java编写习惯的查询API,先通过Session简历一个
Hibernate支持一种符合Java撰写习惯的查询API,使用Session建立一个Criteria对象,然后在不使用Sql甚至Hql的情况下对数据库进行查询。以最基本的查询来说,如果您想要查询某个物件所对应的资料表中所有的内容,可以直接使用:
Criteria criteria = session.createCriteria(T.class);List T= criteria.list();
其中最经常用Restrictions的静态方法传回criteria 实例传回的每个Criteria实例代表着一个条件,另外还要使用Criteria 的add方法加入这些条件实例。
Restrictions的几个常用限定查询方法如下表所示:
方法 说明Restrictions.eq 等于Restrictions.allEq 使用Map,使用key/value进行多个等于的比对Restrictions.gt 大于 >Restrictions.ge 大于等于 >=Restrictions.lt 小于 <Restrictions.le 小于等于 <=Restrictions.between 对应SQL的BETWEEN子句Restrictions.like 对应SQL的LIKE子句Restrictions.in 对应SQL的in子句Restrictions.and and关系Restrictions.or or关系
Criteria 也可支持排序查询,需要使用Order对结果进行排序,如order.desc()指定根据括号内的条件进行从大到小排序反之则使用asc();
目前只接触这么多后续待学习中。。。