一、...Restrictions.or()和Restrictions.disjunction()区别

: QBE(Query By Example)

Criteria cri= session.createCriteria(Student.class);

disjunction ...Restrictions.or()和Restrictions.disjunction()区别

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类组成

disjunction ...Restrictions.or()和Restrictions.disjunction()区别

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