1. 首页
  2. 编程语言
  3. Java
  4. 使用Spring Data Jpa的CriteriaQuery一个陷阱

使用Spring Data Jpa的CriteriaQuery一个陷阱

上传者: 2022-05-25 00:18:16上传 PDF文件 52.25 KB 热度 4次

使用Spring Data Jpa的CriteriaQuery进行动态条件查询时,可能会遇到一个陷阱,当条件为空时,查询不到任何结果,并不是期望的返回所有结果。所以,如果最后是and就没有问题,只有or的时候有问题。所以正确的写法应该这样:如果条件为空则返回一个空conjunction,也就是空的and,总是为true。公司项目的代码中常见这种写法:也能正常工作,但是其实没有必要在toPredicate方法中调用where,toPredicate只需要返回条件,外层会调用where。

下载地址
用户评论