`
yesjavame
  • 浏览: 687288 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

hibernte中用criteria实现not in功能的方法

 
阅读更多

我一直喜欢criteria,而不喜欢用hql。

Property类中提供的in方法有三个:
public Criterion in(Collection values)
public Criterion in(Object[] values)
public Criterion in(DetachedCriteria subselect)

但是,并没有提供相应的三个notin方法,只提供了一个:
public Criterion notIn(DetachedCriteria subselect)
看来,若是用Property方法,只能再创建一个子查询了。

不过,我们可以再查看Restrictions类。郁闷,Restrictions更离谱,只提供了两个in方法,根本没有提供notIn方法
public static Criterion in(String propertyName, Object[] values)
public static Criterion in(String propertyName, Collection values)

那,怎么办呢?我一直讨厌使用hql。
经过一阵探索之后,发现Restrictions有一个not方法,有了,可以把in外面再套一个not,不久可以了嘛:)。

最后的解决方法的实例代码如下:
criteria.add(Restrictions.not(Restrictions.in("id", callbackIds)));

分享到:
评论

相关推荐

    Hibernate中Criteria的完整用法

    使用 Criteria 进行查询,主要要清晰的是 Hibernate 提供了那些类和方法来满足开发中查询条件的创建和组装。通过 Criteria,可以根据实际情况灵活地组装查询条件,以满足复杂的查询需求。 Hibernate 的 Criteria 是...

    Hibernate的Criteria用法总结.doc

    Hibernate 的 Criteria 是一个完全面向对象、可扩展的条件查询 API,通过它完全不需要考虑数据库底层如何实现、SQL 语句如何实现。Criteria 提供了灵活的查询条件组装方式,能够满足开发中复杂的查询需求。 一、...

    hibernateCriteria查询

    查询条件是通过`org.hibernate.criterion.Restrictions` 类来定义的,这个类提供了许多静态方法来模拟SQL语句中的条件,例如`eq` (等于)、`gt` (大于)、`in` (包含在列表中)等。 #### 三、简单Criteria查询示例 ...

    Hibernate中Criteria的完整用法.docx

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

    Hibernate的Criteria用法总结

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

    Hibernate Criteria 排序的問題

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

    Hibernate-Criteria_模糊查询

    在Hibernate中,利用Criteria API进行模糊查询,可以更加方便地实现这一功能。 ### 使用Hibernate-Criteria进行模糊查询 #### 准备工作 首先,确保项目中已经引入了Hibernate相关的依赖库,并且配置好了实体类与...

    Hibernate-Criteria 模糊查询

    `Hibernate-Criteria`的模糊查询功能极大地扩展了开发人员在处理数据时的灵活性和效率。通过结合`Expression`的各种子类,你可以构建出符合业务需求的复杂查询逻辑,从而更好地管理数据和优化应用性能。在实际项目中...

    Hibernate中Criteria的使用

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

    Hibernate的Criteria文档

    总的来说,Hibernate的Criteria API为Java开发人员提供了一种灵活且数据库无关的查询机制,它简化了复杂查询的实现,同时也提高了代码的可读性和可维护性。通过熟练掌握Criteria API,开发者可以在不牺牲性能的前提...

    Hibernate中Criteria的用法

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

    Hibernate criteria基本操作

    Hibernate Criteria 是一种在Java应用程序中使用Hibernate ORM框架执行...Hibernate Criteria 提供了丰富的功能,使开发者在处理数据库查询时无需直接编写 SQL 语句,从而提高了代码的可维护性和跨数据库平台的移植性。

    关联映射hibernate的criteria的用法

    本文将深入探讨Criteria API的使用方法,并通过源码分析来帮助初学者快速掌握这一功能。 ### 1. Criteria API概述 Criteria API是Hibernate的一个强大特性,它提供了一种灵活且类型安全的查询方式。与HQL...

    hibernate criteria的使用方法

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

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

    本篇将详细讲解如何在Hibernate中利用Criteria查询来实现类似SQL的查询操作,并探讨其在实际开发中的应用。 Criteria查询是Hibernate提供的一种灵活的查询方式,它可以让我们根据业务需求动态地构建查询条件。这种...

    Criteria hibernate

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

Global site tag (gtag.js) - Google Analytics