我正在使用JPA Repository。
public interface XXXTransactionRepository extends AbstractRepository<XXXTransaction> {
public List<XXXTransaction> findByUserId(Long id);
}
我可以在像这样的Repository方法中传递谓词吗?
public List<XXXTransaction> findAll(Predicate predicate);
答案 0 :(得分:1)
不,但您可以使用可以传递规范的AbstractRepository.fineOne(规范规范)。 这是一个示例用法:
xxxTransactionRepository.findOne(new Specificaiton<XXXTransaction>(){
@Override
public Predicate toPredicate(final Root<XXXTransaction> root, final CriteriaQuery<?> query, final CriteriaBuilder cb) {
return cb.equal(root.get("fieldName",someVar);
}
});
了解有关规格的更多信息