小编Azh*_*not的帖子

RepositoryItemReader找不到带参数的方法

我在springBatch步骤中为读者设置了一个ItemRepositoryReader.

public ItemReader<EcheanceEntity> reader(){
    RepositoryItemReader<EcheanceEntity> reader = new RepositoryItemReader<EcheanceEntity>();
    reader.setRepository(echeanceRepository);
    reader.setMethodName("findById");
    List parameters = new ArrayList();
    long a = 0;
    parameters.add(a);
    reader.setArguments(parameters);
    Map<String, Direction> sort = new HashMap<String, Direction>();
    sort.put("id", Direction.ASC);
    reader.setSort(sort);
    return reader;
}
Run Code Online (Sandbox Code Playgroud)

这是我的存储库中的行.

public interface EcheanceRepository extends JpaRepository<EcheanceEntity, Long>{


public EcheanceEntity findById(long id);

@Override
public List<EcheanceEntity> findAll();
Run Code Online (Sandbox Code Playgroud)

如果使用方法findAll(),所以没有任何参数,它工作正常.但是如果我使用方法findById(long id),我会从ItemRepositoryReader中得到"没有这样的方法异常,findById(java.lang.Long,org.springframework.data.domain.PageRequest)".当我通过立即使用存储库测试它时,该方法可以正常工作而无需使用阅读器.

谢谢.

java spring spring-batch

5
推荐指数
1
解决办法
6647
查看次数

标签 统计

java ×1

spring ×1

spring-batch ×1