是否存在JpaSpecificationExecutor响应式版本

wydwbb8l  于 7个月前  发布在  其他
关注(0)|答案(2)|浏览(54)

下面的代码使用Specification来构建复杂的where子句。

public interface EmployeeRepository extends
    CrudRepository<Employee, String>,
    JpaSpecificationExecutor<Employee> {
}

public class Service {
    @Autowired
    private EmployeeRepository employeeRepository;

   public List<Employee> test() {
      return employeeRepository.findAll(where(hasNames(List.of("Tom", "Jerry"))).and(hasAges(List.of(20,21))));
   }
}

字符串
我尝试使用r2dbc将此代码转换为响应式。我将CrudRepository替换为ReactiveCrudRepository。然而,为了构建复杂的where子句,我需要使用Specification。我没有看到JpaSpecificationExecutor的响应式版本

public interface EmployeeRepository extends
    ReactiveCrudRepository<Employee, String>,
    JpaSpecificationExecutor<Employee> { // is there ReactiveJpaSpecificationExecutor?
}


有没有JpaSpecificationExecutor的React式版本,或者有没有一种方法可以在React式中构建这样的where子句?

dkqlctbz

dkqlctbz2#

我使用ReactiveQuerydslPredicateExecutor

@Repository
public interface EmployeeRepository extends ReactiveCrudRepository<Employee, Long>, ReactiveQuerydslPredicateExecutor<Employee> {
    
    Flux<Employee> findAll(Predicate predicate);
    Mono<Employee> findOne(Predicate predicate);
    Mono<Long> count(Predicate predicate);        
}

字符串

相关问题