List<Concentrator> cons = concentratorRepository.findAll((Root<Concentrator> root, CriteriaQuery<?> query, CriteriaBuilder cb) -> {
List<Predicate> predicatesList = new ArrayList<>();
if (!StringUtils.isEmpty(concentrator.getUsageType())) {
Predicate usageTypePredicate = cb.equal(root.get("usageType"), concentrator.getUsageType());//usageType
predicatesList.add(usageTypePredicate);
}
if (!StringUtils.isEmpty(concentrator.getOnlineState())) {
Predicate onlineStatePredicate = cb.equal(root.get("onlineState"), concentrator.getOnlineState());//onlineState
predicatesList.add(onlineStatePredicate);
}
if (!StringUtils.isEmpty(concentrator.getCampus())) {
Predicate campusPredicate = cb.equal(root.get("campus"), concentrator.getCampus());//campus
predicatesList.add(campusPredicate);
}
if (!StringUtils.isEmpty(concentrator.getBuildingName())) {
Predicate buildingNamePredicate = cb.equal(root.get("buildingName"), concentrator.getBuildingName());//buildingName
predicatesList.add(buildingNamePredicate);
}
Predicate[] predicates = new Predicate[predicatesList.size()];
return cb.and(predicatesList.toArray(predicates));
});
Spring Data -Specification基本查询示例
最新推荐文章于 2025-02-26 09:54:39 发布