我们希望有条件地将 where 子句添加到 SQL where 类
例如,我们有一个 DAO,它有一个带有 10 个参数的方法。
对于这些参数中的每一个,我们检查它是否为空,如果不是,我们在 where 子句中添加一个 AND。
“base”查询是一个硬编码字符串,我们将它与 ANDS 连接起来。
我正在寻找一种更优雅的方式来实现这一点。
我们在应用程序的其他地方使用休眠
您可以使用Hibernate 条件 API来动态构建查询。
为简单起见,您可以使用可变参数方法并为数组启动循环并检查不为空并将其连接起来。否则你可以使用 Hibernate 标准 API。
Hibernate Criteria 可能是您想要的。
http://www.mkyong.com/hibernate/hibernate-criteria-examples/
http://www.dil.univ-mrs.fr/~massat/docs/hibernate-3.1/api/org/hibernate/Criteria.html