我目前有一個 Spring JPA 存盤庫繼承QuerydslPredicateExecutor和JpaRepository.
我正在使用 中的Page<T> findAll(Predicate predicate, Pageable pageable)方法QuerydslPredicateExecutor,但我想做一個動態投影,就像我們可以做的JpaRepository一樣(<T> List<T> findByName(String name, Class<T> type)例如)。
我試圖添加一個<T> Page<T> findAll(Predicate predicate, Pageable pageable, Class<T> type)
有沒有辦法做到這一點?
uj5u.com熱心網友回復:
有沒有辦法做到這一點?
就在這里。
Spring Data JPA 的 2.6 RC1 版本為 Query By Example、Specifications 和 Querydsl 引入了流暢的 API。您可以使用它來配置投影。請注意,僅支持界面投影。
您可以使用這樣的投影:
interface SomeRepository extends CrudRepository, QuerydslPredicateExecutor {}
MyService {
@Autowired
SomeRepository repository;
void doSomething(){
Page<ProjectionInterface> projections =
repository.findBy(
querydslPredicate,
q -> q.as(ProjectionInterface.class).page(pageRequest)
);
// ...
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/513995.html
上一篇:Swagger/OpenAPI在線驗證器的模式驗證失敗
下一篇:9個SQL運維常遇到的問題
