1 / 18
文档名称:

Hibernate的Criteria用法总结.doc

格式:doc   页数:18页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Hibernate的Criteria用法总结.doc

上传人:luyinyzhi 2016/6/7 文件大小:0 KB

下载得到文件列表

Hibernate的Criteria用法总结.doc

相关文档

文档介绍

文档介绍:最近在项目中使用 Struts 和 Hibernate 进行开发, 有感于 Criteria 比较好用, 在查询方法设计上可以灵活的根据 Criteria 的特点来方便地进行查询条件的组装。现在对 Hibernate 的 Criteria 的用法进行总结: Hibernate 设计了 CriteriaSpecification 作为 Criteria 的父接口,下面提供了 Criteria 和 DetachedCriteria 。 Criteria 和 DetachedCriteria 的主要区别在于创建的形式不一样, Criteria 是在线的, 所以它是由 Hibernate Session 进行创建的;而 DetachedCriteria 是离线的,创建时无需 Session , DetachedCriteria 提供了 2 个静态方法 forClass(Class) 或 forEntityName(Name) 进行 DetachedCriteria 实例的创建。 Spring 的框架提供了 getHibernateTemplate ().findByCriteria(detachedCriteria) 方法可以很方便地根据 DetachedCriteria 来返回查询结果。 Criteria 和 DetachedCriteria 均可使用 Criterion 和 Projection 设置查询条件。可以设置 FetchMode( 联合查询抓取的模式), 设置排序方式。对于 Criteria 还可以设置 FlushModel (冲刷 Session 的方式)和 LockMode (数据库锁模式)。下面对 Criterion 和 Projection 进行详细说明。 Criterion 是 Criteria 的查询条件。 Criteria 提供了 add(Criterion criterion) 方法来添加查询条件。 Criterion 接口的主要实现包括: Example 、 Junction 和 Simpl********** 。而 Junction 的实际使用是它的两个子类 conjunction 和 disjunction , 分别是使用 AND 和 OR 操作符进行来联结查询条件集合。 Criterion 的实例可以通过 Restrictions 工具类来创建, Restrictions 提供了大量的静态方法,如 eq (等于)、 ge (大于等于)、 between 等来方法的创建 Criterion 查询条件( Simpl********** 实例)。除此之外, Restrictions 还提供了方法来创建 conjunction 和 disjunction 实例, 通过往该实例的 add(Criteria) 方法来增加查询条件形成一个查询条件集合。至于 Example 的创建有所不同, Example 本身提供了一个静态方法 create(Object entity) ,即根据一个对象(实际使用中一般是映射到数据库的对象)来创建。然后可以设置一些过滤条件: Example exampleUser =(u) .ignoreCase() // (); //对 String 类型的属性,无论在那里值在那里都匹配。相当于%value% Project 主要是让 Criteria 能够进行报表查询, 并可以实现分组。 Project 主要有 SimpleProjection 、 ProjectionList 和 Property 三个实现。其中 SimpleProjection 和 ProjectionList 的实例化是由内建的 Projections 来完成,如提供的 avg 、 count 、 max 、 min 、 sum 可以让开发者很容易对某个字段进行统计查询。 Property 是对某个字段进行查询条件的设置,如通过 ( “ color ”).in (new String[]{ “ black ”,” red ”,” write ”}); 则可以创建一个 Project 实例。通过 criteria 的 add(Project) 方法加入到查询条件中去。使用 Criteria 进行查询, 主要要清晰的是 Hibernate 提供了那些类和方法来满足开发中查询条件的创建和组装,下面介绍几种用法: 1. 创建一个 Criteria . 接口表示特定持久类的一个查询。 Session 是 Criteria 实例的工厂。 Criteria crit

最近更新

信息科技管理在医疗健康领域中的应用 18页

2024年康养企业项目投资申请报告代可行性研究.. 59页

2024年会计、审计及税务服务项目资金筹措计划.. 78页

围手术期术后处理 32页

动物细胞与组织培养技术 186页

先进制造技术第一讲 54页

嘉里大通物流有限公司简介 53页

2024年炊事设备项目资金需求报告代可行性研究.. 81页

一封给校长的建议书范文 7页

个人收房委托书模板(3篇) 3页

二年级语文《田家四季歌》教学设计 53页

优秀园长发言稿 27页

英语四级考前一个月冲刺计划 5页

苏教版二年级下册识字7课件 25页

自动化第二党支部何亚丽-PPT课件 20页

2023年毕业答辩开场白合集15篇 23页

C语言课程设计报告—工资信息管理系统 16页

《绿色产业指导目录(2023年版)》(征求意见稿).. 13页

个人社会实践心得体会范文(精选7篇) 11页

传承红色精神演讲稿优秀范文【5篇】 15页

公寓委的工作总结8篇 30页

初中物理第1章精选试题含答案 9页

危险源辨识(辨识依据及方法) 13页

国开电大管理英语1形考任务单元自测6试题及答.. 11页

学习中小学幼儿园安全管理办法知识测试题及答.. 16页

小学语文实践活动怎样开展 8页

广东省深圳市富源学校2022-2023学年高一下学期.. 12页

先心病基础知识ppt课件 33页

混凝土分包合同 5页

2022年北京市昌平区水务公司招聘考试试题及答.. 3页