`
xiaoqulai
  • 浏览: 75782 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
han
文章分类
社区版块
存档分类
最新评论

Hibernate Criteria 的用法

阅读更多
Hibernate Criteria 的用法 1. 普通的查询 Criteria criteria = session.createCriteria(Track.class); criteria.add(Restrictions.le(”playTime”,length)); return criteria.list(); 2. 其他 Criteria criteria = session.createCriteria(Track.class); criteria.add(Restrictions.le(”playTime”,length)); criteria.addOrder(Order.asc(”title”).ignoreCase()); return criteria.list(); 3. 组合条件查询 Criteria critera = session.createCriteria(Track.class); criteria.add(Restrictions.le(”playTime”,length)); criteria.add(Restrictions.like(”title”,length)); criteria.addOrder(Order.asc(”title”).ignoreCase()); 4. 宽松条件查询(OR) session.createCriteria(Tarck.class) .add(Restrictions.disjunction() .add(Restrictions.le(”playTime”),length)) .add(Restrictions.like(”title”), “%A%”))) .addOrder(Order.asc(”title”).ignoreCase()) .list(); 5.对单一属性做简单投影,返回的List 是String类型的List对象 Session.createCriteria(Track.class) .add(Resritctions.like(”title”,”sometext”, MatchMOde.ANYWHERE).ignoreCase()) .setProjection(Projections.property(”title”)) .list(); 6.对多个属性做投影,返回Object数组类型的List对象 Session.createCriteria(Track.class) .add(Resritctions.like(”title”,”sometext”, MatchMOde.ANYWHERE).ignoreCase()) .setProjection(Projections.property(”title”)) .setProjection(Projections.property(”playTime”)) .list(); 7.带聚合的投影 a.创业一个ProjectionList实例 b.对sourceMedia字段分组 c.返回记录总数 d.返回分组的结果集中playTime的最大值 Session.createCriteria(Track.class) .setProjection(Projections.projectionList()) //a .add(Projections.groupProperty(”sourceMedia”)) //b .add(Projections.rowCount()) //c .add(Projections.max(”playTime”))); //d //select count(*), max(track.playTime) from track group by track.sourceMedia 8. 对聚合投影结果排序要通过设置别名来完成 Session.createCriteria(Track.class) .setProjection(Projections.projectionList()) .add(Projections.groupProperty(”sourceMedia”).as(”media”)) .add(Projections.rowCount()) .add(Projections.max(”playTime”))); .addOrder(Order.asc(”media”)); 9. 在关联中应用条件查询 Criteria criteria = session.createCriteria(Track.class); Criteria artistCriteria = criteria.createCriteria(”artists”); artistCritera.add(Restrictions.like(”name”,namePattern)); artisCriteria.addOrder(Order.asc(”name”).ignoreCase()); criteria.list(); 10. 示例查询 a.示例查询中,值为null的忽略 b.对字符串值按照区分大小写的逐字比较 c.如果比较时,需要忽略为0的属性,可以调用example.excludeZeroes() d.如果希望对值为null的属性进行匹配可以调用example.excludeNone() e.example.excludeProperty()用来明确忽略指定名称的特定属性 f.调整字符串处理,还可以使用ignoreCase()和enableLike()方法 SourceMedia media = new SourceMedia(); media.setName(”example”) Track track = new Track(); track.setSourceMedia(media); \\media 是一个SourceMedia对象 Example example = Example.create(track); Criteria criteria = session.createCriteria(Track.class); criteria.add(example); criteria.addOrder(Order.asc(”title”)); return critera.list();
分享到:
评论

相关推荐

    Hibernate Criteria用法大全.docx

    【Hibernate Criteria 用法详解】 Hibernate Criteria API 是一种面向对象的查询方式,它提供了一种比HQL(Hibernate Query Language)更为简洁且直观的查询手段。通过Criteria API,开发者可以构建复杂的查询条件...

    hibernate criteria的使用方法

    ### Hibernate Criteria 使用方法详解 #### 一、简介 Hibernate 是一款非常流行的 Java 持久层框架,它简化了对象关系映射(ORM)过程中的许多复杂性。在 Hibernate 中,Criteria API 提供了一种类型安全的方式来...

    Hibernate的Criteria用法总结

    在Java持久层框架Hibernate中,Criteria API是一种动态构建SQL查询的方法,它允许开发者在运行时构建查询,提供了更面向对象的查询方式。本篇将详细阐述Hibernate Criteria API的使用。 首先,Criteria API由...

    hibernateCriteria查询

    这段代码首先通过`getSession()` 方法获取一个`Session` 对象,然后使用`createCriteria()` 方法创建一个针对`Books` 类的`Criteria` 实例。最后,通过`list()` 方法执行查询并获取所有书籍的数据。 #### 四、条件...

    Hibernate criteria基本操作

    Hibernate Criteria 是一种在Java应用程序中使用Hibernate ORM框架执行SQL查询的方式。它提供了一种面向对象的方式来构建查询,使得代码更加可读和易于维护。Criteria API 提供了多种方法来构建复杂的查询,包括添加...

    Hibernate的Criteria用法总结.doc

    使用 Criteria 进行查询,主要要清晰的是 Hibernate 提供了那些类和方法来满足开发中查询条件的创建和组装。Criteria crit = session.createCriteria(User.class); crit.add(Restrictions.eq("name", "John")); List...

    Hibernate Criteria 排序的問題

    本文将围绕给定的代码片段,深入探讨Hibernate Criteria API中排序功能的使用方法与注意事项。 #### 二、基础知识回顾 在开始之前,我们先简单回顾一下Hibernate Criteria API的基础知识: - **Criteria API**:...

    hibernate criteria 分组 排序 关联

    在Hibernate中,使用`Criteria`进行查询时,可以通过添加排序条件来对结果集进行排序。`Criteria`提供了一个非常灵活的方式来实现这一点。 **示例代码**: ```java Criteria criteria = session.createCriteria...

    Hibernate Criteria 完全使用

    **Hibernate Criteria 完全使用详解** Hibernate Criteria API 是 Hibernate 框架中一个强大的查询工具,它提供了一种面向对象的方式来构建SQL查询,使得开发者无需直接编写SQL语句,即可进行复杂的数据库操作。...

    Hibernate中Criteria的完整用法

    Hibernate 中 Criteria 的完整用法 Hibernate 的 Criteria 是一种强大且灵活的查询机制,允许开发者根据需求灵活地组装查询条件。Criteria 的设计是基于 CriteriaSpecification 父接口,提供了 Criteria 和 ...

    Hibernate中Criteria的用法

    Hibernate 中 Criteria 的用法 Hibernate 中 Criteria 的用法是 Hibernate 框架中的一种查询机制,它提供了灵活的查询方式,可以根据不同的条件进行查询。Criteria 查询机制主要包括 QBE(Query By Example)、QBC...

    Criteria hibernate

    本篇内容将聚焦于Hibernate中的Criteria查询,这是一种动态构建SQL查询的方法,无需直接编写SQL语句,非常适合在程序运行时根据条件构建查询。 在Hibernate中,Criteria API提供了一种类型安全的方式来执行查询,它...

    Hibernate的Criteria用法

    以下是对Criteria用法的详细说明: 1. **创建Criteria实例**: 要开始使用Criteria,你需要在Hibernate的Session中调用`createCriteria()`方法,传入你想查询的实体类的Class对象。例如,如果你要查询Person实体,...

    Hibernate中Criteria的完整用法.docx

    本文将对 Hibernate 中 Criteria 的用法进行总结,涵盖 Criteria 和 DetachedCriteria 的差异、Criterion 和 Projection 的使用方法等。 Hibernate 设计了 CriteriaSpecification 作为 Criteria 的父接口,下面提供...

    关联映射hibernate的criteria的用法

    **关联映射Hibernate的Criteria用法详解** 在Java开发中,Hibernate作为一种强大的对象关系映射(ORM)框架,极大地简化了数据库操作。其中,Criteria API是Hibernate提供的一个动态查询工具,它允许开发者以面向...

    hibernateCriteria的使用.docx

    在Java的持久化框架Hibernate中,Criteria API是一种用于构建动态查询的强大工具,它允许开发者以编程方式构建查询,而不是直接写SQL语句。下面将详细解释Criteria API的使用及其相关概念。 1. Query By Example ...

    Hibernate中,利用Criteria查询容器实现sql的写法

    这种API的使用方法更加面向对象,减少了硬编码SQL的风险,同时提高了代码的可读性和可维护性。下面我们将通过几个关键概念来深入理解Criteria查询。 1. **Session**: Hibernate的核心接口,用于与数据库进行交互。...

    Hibernate中Criteria的使用

    使用 Criteria 进行查询,主要要清晰的是 Hibernate 提供了那些类和方法来满足开发中查询条件的创建和组装。Criteria 和 DetachedCriteria 都可以使用Criterion 和 Projection 设置查询条件,可以设置 FetchMode...

Global site tag (gtag.js) - Google Analytics