0 0

关于Hibernate多条件组合查询6

各位好,我现在有一个需求,就是写一个通用的Hibernate多条件组合查询,对于简单的and或者or可以实现,但是如果对于像下面的查询条件,如何去写一个通用的?
比如我的查询条件是 (name like "%jess%" and  age>30 )or address = "";
类似于上面的查询条件如何写一个通用的呢?
谢谢各位
2012年6月26日 10:49

2个答案 按时间排序 按投票排序

0 0

别整了,这个特么难整,查询有点复杂,你这业务只是特定的,直接用判断,来后来进行组装更方便,

传Map ,同时封装Condition对象,Condition 对象里面加个类型,然后再放入到map里面

个人思路,细节部分需要去构思

2012年6月27日 21:48
0 0

这个貌似你还是直接拼接hql省事一些。

2012年6月27日 08:13

相关推荐

    基于spring+hibernate的组合查询+分页组件

    通过这些方法,我们可以构建动态的、复杂的查询条件,比如使用Hibernate的Criteria API或者Query API,实现基于多个条件的组合查询。 分页组件在大型Web应用中是必不可少的,因为它可以帮助用户更有效地浏览大量...

    Java_Hibernate QBC条件查询对比

    同时,Hibernate还提供了Criteria API,它是QBC的一部分,提供了更多的动态查询功能,可以组合多个条件,甚至可以与DetachedCriteria结合,实现更复杂的查询逻辑。 总结来说,Java_Hibernate中的QBC和HQL各有优势和...

    Hibernate_Criteria条件查询数据

    3. **组合条件**:除了单个条件外,还可以通过`Conjunction`(AND)和`Disjunction`(OR)来组合多个条件。例如,查找年龄大于30且城市为北京的用户: ```java Criteria crit = session.createCriteria(User.class...

    Hibernate的MySql查询.rar

    Criteria API则提供了一种更加面向对象的查询方式,它允许我们构建查询条件并动态地组合它们。以下是如何使用Criteria API来获取所有用户: ```java Session session = HibernateUtil.getSessionFactory()....

    hibernateHQL关联查询

    在实际开发中,HQL关联查询的应用场景非常广泛,特别是在需要跨多个实体进行数据检索的情况下。例如,在电子商务系统中,我们需要获取用户信息及其相关的订单信息时,就可以利用HQL关联查询来简化这一过程。此外,当...

    超好用的hibernate查询工具类

    在实际开发中,这个工具类可以根据项目需求进行定制,添加更多的辅助方法,例如时间范围查询、多条件组合查询等。同时,为了保证代码的健壮性,工具类还需要考虑异常处理,提供合适的日志输出,以及适当的性能优化...

    Hibernate进行数据查询

    - 条件组合:`select * from User where (age > 20 AND age ) OR sex = 'F'` 4. **分页查询** 当需要对大量数据进行分页展示时,可以使用`setFirstResult`和`setMaxResults`方法: ```java Query query = ...

    hibernate 中HQL语句查询学习笔记

    用于组合多个条件: ```hql SELECT s FROM Student s WHERE s.sage > 18 AND s.sdept = 'Computer'; ``` 这将返回年龄大于18且系别为计算机的学生。 ##### or 逻辑或 当需要查询满足任一条件的记录时: ```hql ...

    Hibernate三大类查询总结

    `Disjunction()`可以组合多个条件,实现“或”的效果,如下所示: ```java List<Cat> cats = sess.createCriteria(Cat.class) .add(Restrictions.disjunction() .add(Restrictions.isNull("age")) .add...

    hibernate查询语句--HQL

    ### Hibernate 查询语句 -- HQL #### 概述 Hibernate 是一个开源的对象关系映射 (ORM) 框架,它允许开发人员将 Java 对象映射到数据库表中的记录,从而简化了数据访问逻辑。在 Hibernate 中,执行查询操作的主要...

    Hibernate HQL基础 限定查询条件 .doc

    Where 子句是HQL中用于限制查询结果的关键部分,它接受一个或多个表达式,这些表达式定义了返回的对象必须满足的条件。例如,`from Guestbook where name = 'XXX'` 将只返回名字为'XXX'的Guestbook对象。 2. **...

    Hibernate_query查询数据表中部分字段.

    在复杂的查询场景下,可以使用DetachedCriteria来预定义查询条件,然后在需要时再与其他查询组合使用。 5. **命名查询(Named Queries)**: 如果某些查询模式经常被使用,可以定义命名查询,将其写入XML映射文件...

    Hibernate-Criteria 模糊查询

    1. **条件组合**:你可以使用`Expression`的`and`或`or`方法来组合多个查询条件,以满足更为复杂的查询逻辑。 ```java Expression expr1 = Restrictions.eq("name", "Erica"); Expression expr2 = Restrictions...

    hibernate结构化查询

    2. `Expression.allEq(Map, Object> properties)`:此方法接收一个Map,用于创建多个等于条件,相当于多个`Expression.eq`的组合。例如: ```java Map, Object> map = new HashMap(); map.put("id", "001"); map...

    Hibernate学习资料(离线查询)

    此外,还可以进行更复杂的多条件组合查询,例如: ```java List allEmp = session.createCriteria(Employee.class) .add(Restrictions.or( Restrictions.like("address", "%人%"), Restrictions.isNull("address...

    Hibernate关联关系练习【全】

    此外,Hibernate提供了 Criteria API 和 CriteriaBuilder API 进行复杂的查询,如分页、排序、条件组合等。 关联关系在查询中尤为重要,例如,可以通过fetch方式进行懒加载或立即加载关联对象。懒加载意味着关联的...

    hibernate中文参考文档

    12. 条件查询:条件查询是数据库操作中常见的需求,文档会讲解如何使用Hibernate的Criteria API来构建灵活的条件查询。 13. 原生SQL查询:虽然Hibernate提供强大的HQL和Criteria查询,但在某些特殊情况下可能需要...

    Hibernate实例开发 HQL 与 QBC 查询

    QBC的优势在于其灵活性,我们可以方便地组合条件,进行范围查询,甚至可以实现动态查询。例如,如果我们想根据年龄范围查找用户: ```java criteria.add(Restrictions.between("age", 20, 30)); ``` 总的来说,HQL...

Global site tag (gtag.js) - Google Analytics