java - 条件 trowing 错误以及如何在此处使用而不会出现任何错误
问题描述
我的存储库代码
@Repository
public interface EventRepository extends CrudRepository<Event, Long>, JpaSpecificationExecutor<Event>{
List<Event> findByStatus(String status);
Page<Event> findByStatus(String status, Pageable pageable);
}
我的服务等级
public ApiResponse upcommingEvent(String filter){
return new ApiResponse(LocalDateTime.now(), HttpStatus.OK, "some", eventRepository.findAll(new Specification<Event>() {
@Override
public Predicate toPredicate(Root<Event> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
List<Predicate> predicates = new ArrayList<>();
if(filter!=null) {
predicates.add(criteriaBuilder.and(criteriaBuilder.greaterThanOrEqualTo(root.get("eventDateStart"), filter)));
}
return criteriaBuilder.and(predicates.toArray(new Predicate[predicates.size()]));
}
}));
}
这里 eventRepository.findAll(new Specification()) 是默认功能,但我需要 findByStatus("Y") 条件。当我使用 findByStatus 条件时出现错误以及如何在此处使用而没有任何错误。
解决方案
推荐阅读
- netflix-eureka - 命中端点时出现异常:负载均衡器没有可供客户端使用的服务器
- python - 处理和清理非结构化数据
- r - R-pkgs Roxygen \varphi 无法渲染
- powershell - 使用 EXO v2 PS 模块在线连接到 Exchange - 本周开始出现问题
- c++ - c++ 类中的函数指针引发编译器错误
- reactjs - 在 React 项目中使用 Material ui 和 Tailwind css
- linux - 从 USB 设备加载根文件系统
- java - 如何转换 AWS Lambda 为 AWS Batch 创建图像
- javascript - 如何在使用 JavaScript 检测选项卡更改时获取选项卡的标题/URL
- r - 使用 R 从 vobjtovarid4 读取 netCDF 文件时出错