欢迎来到天天文库
浏览记录
ID:34723232
大小:62.29 KB
页数:17页
时间:2019-03-10
《hibernate中criteria详解使用方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Criteria的完整用法QBE(QueryByExample)Criteriacri=session.createCriteria(Student.class);cri.add(Example.create(s));//s是一个Student对象listcri.list();实质:创建一个模版,比如我有一个表serial有一个giftortoy字段,我设置serial.setgifttoy("2"),则这个表中的所有的giftortoy为2的数据都会出来2:QBC(QueryByCriteria)主要有Criteria
2、,Criterion,Oder,Restrictions类组成session=this.getSession();Criteriacri=session.createCriteria(JdItemSerialnumber.class);Criterioncron=Restrictions.like("customer",name);cri.add(cron);list=cri.list();==============================比较运算符HQL运算符QBC运算符含义=Restrictions.eq(
3、)等于<>Restrictions.not(Exprission.eq())不等于>Restrictions.gt()大于>=Restrictions.ge()大于等于4、.conjunction()逻辑与orRestrictions.or()逻辑或orRestrictions.disjunction()逻辑或notRestrictions.not()逻辑非in(列表)Restrictions.in()等于列表中的某一个值ontin(列表)Restrictions.not(Restrictions.in())不等于列表中任意一个值betweenxandyRestrictions.between()闭区间xy中的任意值notbetweenxandyRestrictions.not(Restr5、ictions..between())小于值X或者大于值y3:HQLStringhql="selects.name,avg(s.age)fromStudentsgroupbys.name";Queryquery=session.createQuery(hql);list=query.list();....4:本地SQL查询session=sessionFactory.openSession();tran=session.beginTransaction();SQLQuerysq=session.createSQLQuer6、y(sql);sq.addEntity(Student.class);list=sq.list();tran.commit();16.1.创建一个Criteria实例org.hibernate.Criteria接口表示特定持久类的一个查询。Session是Criteria实例的工厂。Criteriacrit=sess.createCriteria(Cat.class);crit.setMaxResults(50);Listcats=crit.list();16.2.限制结果集内容一个单独的查询条件是org.hiberna7、te.criterion.Criterion接口的一个实例。org.hibernate.criterion.Restrictions类定义了获得某些内置Criterion类型的工厂方法。Listcats=sess.createCriteria(Cat.class).add(Restrictions.like("name","Fritz%")).add(Restrictions.between("weight",minWeight,maxWeight)).list();约束可以按逻辑分组。Listcats=sess.cre8、ateCriteria(Cat.class).add(Restrictions.like("name","Fritz%")).add(Restrictions.or(Restrictions.eq("age",newInteger(0)),Restrictions.isNull("age"))).list();Lis
4、.conjunction()逻辑与orRestrictions.or()逻辑或orRestrictions.disjunction()逻辑或notRestrictions.not()逻辑非in(列表)Restrictions.in()等于列表中的某一个值ontin(列表)Restrictions.not(Restrictions.in())不等于列表中任意一个值betweenxandyRestrictions.between()闭区间xy中的任意值notbetweenxandyRestrictions.not(Restr
5、ictions..between())小于值X或者大于值y3:HQLStringhql="selects.name,avg(s.age)fromStudentsgroupbys.name";Queryquery=session.createQuery(hql);list=query.list();....4:本地SQL查询session=sessionFactory.openSession();tran=session.beginTransaction();SQLQuerysq=session.createSQLQuer
6、y(sql);sq.addEntity(Student.class);list=sq.list();tran.commit();16.1.创建一个Criteria实例org.hibernate.Criteria接口表示特定持久类的一个查询。Session是Criteria实例的工厂。Criteriacrit=sess.createCriteria(Cat.class);crit.setMaxResults(50);Listcats=crit.list();16.2.限制结果集内容一个单独的查询条件是org.hiberna
7、te.criterion.Criterion接口的一个实例。org.hibernate.criterion.Restrictions类定义了获得某些内置Criterion类型的工厂方法。Listcats=sess.createCriteria(Cat.class).add(Restrictions.like("name","Fritz%")).add(Restrictions.between("weight",minWeight,maxWeight)).list();约束可以按逻辑分组。Listcats=sess.cre
8、ateCriteria(Cat.class).add(Restrictions.like("name","Fritz%")).add(Restrictions.or(Restrictions.eq("age",newInteger(0)),Restrictions.isNull("age"))).list();Lis
此文档下载收益归作者所有