: QBE (Query By Example)
Criteria cri = sessioncreateCriteria(Studentclass);
criadd(Examplecreate(s)); //s是一个Student对象
list crilist();
实质创建一个模版比如我有一个表serial有一个 giftortoy字段我设置serialsetgifttoy()
则这个表中的所有的giftortoy为的数据都会出来
: QBC (Query By Criteria) 主要有CriteriaCriterionOderRestrictions类组成
session = thisgetSession();
Criteria cri = sessioncreateCriteria(JdItemSerialnumberclass);
Criterion cron = Restrictionslike(customername);
criadd(cron);
list = crilist();
比较运算符
HQL运算符 QBC运算符 含义
=Restrictionseq()等于
<> Restrictionsnot(Exprissioneq()) 不等于
>Restrictionsgt()大于
>= Restrictionsge()大于等于
<= Restrictions.le()小于等于is null Restrictions.isnull() 等于空值
is not nullRestrictions.isNotNull() 非空值
like Restrictions.like() 字符串模式匹配
and Restrictions.and() 逻辑与
and njunction()逻辑与
or Restrictions.or()逻辑或
or Restrictions.disjunction()逻辑或
notRestrictions.not() 逻辑非
in(列表) Restrictions.in()等于列表中的某一个值
ont in(列表)Restrictions.not(Restrictions.in())不等于列表中任意一个值
between x and yRestrictions.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();
mit();
5: QID
Session的get()和load()方法提供了根据对象ID来检索对象的方式。tW.wiNGWIt.COM该方式被用于事先知道了要检索对象ID的情况。