一、...Restrictions.or()和Restrictions.disjunction()区别
: QBE(Query By Example)
Criteria cri= session.createCriteria(Student.class);
cri.add(Example.create(s));//s是一个Student对象
list cri.list();
实质:创建一个模版,比如我有一个表serial有一个 giftortoy字段,我设置serial.setgifttoy("2"),
则这个表中的所有的giftortoy为2的数据都会出来
2: QBC(Query By Criteria)主要有Criteria,Criterion,Oder,Restrictions类组成
session= this.getSession();
Criteria cri= session.createCriteria(JdItemSerialnumber.class);
Criterion cron= Restrictions.like("customer",name);
cri.add(cron);
list= cri.list();
==============================
比较运算符
HQL运算符 QBC运算符含义
= Restrictions.eq()等于
<> Restrictions.not(Exprission.eq())不等于
> Restrictions.gt()大于
>= Restrictions.ge()大于等于
< Restrictions.lt()小于
<= Restrictions.le()小于等于
is null Restrictions.isnull()等于空值
is not null Restrictions.isNotNull()非空值
like Restrictions.like()字符串模式匹配
and Restrictions.and()逻辑与
and Restrictions.conjunction()逻辑与
or Restrictions.or()逻辑或
or Restrictions.disjunction()逻辑或
not Restrictions.not()逻辑非
in(列表) Restrictions.in()等于列表中的某一个值
ont in(列表) Restrictions.not(Restrictions.in())不等于列表中任意一个值
between x and y Restrictions.between()闭区间xy中的任意值
not between x and y Restrictions.not(Restrictions..between())小于值X或者大于值y
3: HQL
String hql="select s.name,avg(s.age) from Student s group by s.name";
Query query= session.createQuery(hql);
list= query.list();
....
4:本地SQL查询
session= sessionFactory.openSession();
tran= session.beginTransaction();
SQLQuery sq= session.createSQLQuery(sql);
sq.addEntity(Student.class);
list= sq.list();
tran.commit();
5: QID
Session的get()和load()方法提供了根据对象ID来检索对象的方式。该方式被用于事先知道了要检索对象ID的情况。
二、inclusive怎么个用法
inclusive [ɪn'kluːsɪv]
adj.包括的,包含的
短语
inclusive ticket票价包括所有费用
inclusive disjunction可兼析取;包含性析取;又称可兼析取;选言连接词
inclusive a包括一应费用在内的;首末日包括在内的;包括的
inclusive segments相容段
Inclusive value包容值
inclusive development包容性发展
inclusive finance普惠金融;包容性金融;普惠制金融
Inclusive Language中立语言;使用中性语言;广容性语言
inclusive OR可兼的逻辑或;或;可兼或
inclusive [in'klu:siv]
adj.
1.
包括的,包含的
2.
一切费用包括在内的;一切项目包含在内的
3.
首末日(或页码)包括在内的
4.
无性别歧视的;不排除女性的[1991]
This process should be inclusive of all departments and all situations.
此过程应该包括所有部门和所有的情况。
三、函数criteria是什么意思
Criteria是一种比hql更面向对象的查询方式。
Criteria可使用 Criterion和 Projection设置查询条件。可以设置 FetchMode(联合查询抓取的模式),设置排序方式,Criteria还可以设置 FlushModel(冲刷 Session的方式)和 LockMode。
概述
Criterion是 Criteria的查询条件。Criteria提供了 add(Criterion criterion)方法来添加查询条件。
Criterion接口的主要实现包括: Example、 Junction和 SimpleExpression。而Junction的实际使用是它的两个子类 conjunction和 disjunction,分别是使用 AND和 OR操作符进行来联结查询条件集合。
Criterion的实例可以通过 Restrictions工具类来创建,Restrictions提供了大量的静态方法,如 eq(等于)、 ge(大于等于)、 between等来方法的创建 Criterion查询条件(SimpleExpression实例)。
除此之外, Restrictions还提供了方法来创建 conjunction和disjunction实例,通过往该实例的 add(Criteria)方法来增加查询条件形成一个查询条件集合。
扩展资料创建实例
Criteria crit= sess.createCriteria(Cat.class);
crit.setMaxResults(50);
List cats= crit.list();
结果集排序
List cats= sess.createCriteria(Cat.class)
.add( Restrictions.like("name","F%")
.addOrder( Order.asc("name"))
.addOrder( Order.desc("age"))
.setMaxResults(50)
.list();
List cats= sess.createCriteria(Cat.class)
.add( Property.forName("name").like("F%"))
.addOrder( Property.forName("name").asc())
.addOrder( Property.forName("age").desc())
.setMaxResults(50)
.list();
参考资料来源:百度百科-criteria