Hibernate查询方法

原创 2007年10月04日 12:56:00

1: 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的情况。 

Hibernate查询方法之探析.doc

  • 2010年10月10日 00:22
  • 31KB
  • 下载

hibernate 查询方法汇总

一、find(String queryString);       示例:this.getHibernateTemplate().find("from bean.User");       返回所...
  • jwlsky
  • jwlsky
  • 2012年05月02日 17:29
  • 334

Hibernate高级查询方法

投影查询——过滤部分字段 返回的List集合元素为Object[] Query query = session.createQuery("select c.cname, c.csex from C...

Hibernate (七)查询方法

Hibernate的三种查询方式 1.HQL (Hibernate Query Lanuage) 语句,这是类似SQL语句的一种对象化查询语句。 2.使用Criteria对象,进行按条件查询(Qu...

Hibernate查询方法比较

Hibernate主要有三种查询方法: 1.HQL (Hibernate Query Language) 和SQL很类似,支持分页、连接、分组、聚集函数和子查询等特性, 但HQL...
  • dc_726
  • dc_726
  • 2012年08月12日 10:59
  • 2144

Hibernate中的数据查询方法

对于数据库的查询,Hibernate提供了两种方法:1.HQL语句查询    2.Criteria 查询语句       一般来说,查询数据库中的记录时,我们会通过ID来寻找记录,在Hibernat...

Hibernate中的查询方法和返回值类型

Hibernate的查询分几种  HQL,QBC(QBE),SQL  HQL查询  HQL是基于面向对象的,里面没有表,也没有列,有类和属性  直接以from开头,表示全部选择  从Hi...

hibernate的gethibernatetemplate find条件查询方法

Spring中常用的hql查询方法 --------------------------------- 一、find(String queryString);      示例:this....
  • pwaixff
  • pwaixff
  • 2017年07月13日 17:45
  • 133

Hibernate查询方法

1: QBE (Query By Example)    Criteria cri = session.createCriteria(Student.class);    cri.add(Exampl...

Hibernate双向多对多查询方法

文件:MachineInfo.java  对应  MachineInfo.hbm.xml public class MachineInfo implements Serializable{   ...
  • XSX127
  • XSX127
  • 2016年03月30日 10:01
  • 176
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate查询方法
举报原因:
原因补充:

(最多只允许输入30个字)