jpa - 如何使用 JPA 规范动态查询返回自定义结果对象?
问题描述
我想返回不是 ENTITY 而是统计数据的 CustomResultObject,如何将它与 JPA 规范动态查询一起使用?示例代码如下所示:
Specification<CustomResultObject> spec = new Specification<CustomResultObject>() {
public Predicate toPredicate(Root<UserModel> root,
CriteriaQuery<?> query, CriteriaBuilder cb) {
Predicate p1 = cb.like(root.get("name").as(String.class), "%"+um.getName()+"%");
Predicate p2 = cb.equal(root.get("uuid").as(Integer.class), um.getUuid());
Predicate p3 = cb.gt(root.get("age").as(Integer.class), um.getAge());
query.where(cb.and(p3,cb.or(p1,p2)));
query.orderBy(cb.desc(root.get("uuid").as(Integer.class)));
return query.getRestriction();
}
};
解决方案
推荐阅读
- c# - asp:literal 控件上如何避免xss?
- javascript - React JS 中 webpack.config.js 中的这个相对路径有什么问题?
- c# - 在 Word 中模拟从另一个 VSTO 插件单击功能区按钮
- sql - 检查 SQL Server 中的条目
- c# - 在不打开浏览器的情况下调用自动下载 URL
- node.js - 如何创建多个 Laravel + Angular 开发环境
- php - 简单的 For-Loop 导致内存耗尽错误
- python - 根据旧数据帧中重新格式化的列创建新数据帧
- datepicker - Datepicker - 无效的日期和班级风格
- javascript - 具有量角器和打字稿的流畅界面