小编soi*_*ker的帖子

如何使用querydsl动态添加where子句?

我一直在寻找文档的一些时间,并尝试了几件事,但我无法动态添加querydsl的where子句:

伪代码,我需要像"if"这样的东西:

boolean addWhereClause = false; 
QAddress address = QAddress.address; 
JPQLQuery query = new JPAQuery(getEntityManager()); 
query.from(address)
     .if(addWhereClause).where(address.company.isNotNull())
Run Code Online (Sandbox Code Playgroud)

或者更好的地方如果:

boolean addWhereClause = false; 
QAddress address = QAddress.address; 
JPQLQuery query = new JPAQuery(getEntityManager()); 
query.from(address)
     .whereIf(addWhereClause, address.company.isNotNull())
Run Code Online (Sandbox Code Playgroud)

到目前为止我唯一发现的是使用BooleanBuilder,但我认为有更好的方法(比如上面的伪代码).

亲切的问候,土工

java querydsl

10
推荐指数
1
解决办法
5439
查看次数

标签 统计

java ×1

querydsl ×1