Spring Rest API中的JPA查询返回列表

时间:2019-01-28 20:46:55

标签: java spring spring-boot spring-restcontroller

我有一个要在Spring rest API中返回的对象列表:

public Stream<PaymentTransactions> findListByReference_transaction_id(Integer id);

我尝试过:

@GetMapping("/reference_transaction_id/{id}")
public Stream<Object> getByListReference_transaction_id(@PathVariable String id) {
    return transactionService
            .findListByReference_transaction_id(Integer.parseInt(id)).collect()
            .map(mapper::toDTO)
            .map(ResponseEntity::ok).orElseGet(() -> notFound().build());;
}

我有两个问题需要解决。

  1. 如何返回ResponseEntity<List<PaymentTransactions>>而不是Stream以便在Angular中将其读取为Arraylist。
  2. 对于orElseGet,我收到错误消息The method orElseGet(() -> {}) is undefined for the type Stream<ResponseEntity<PaymentTransactionsDTO>>

我该如何解决这些问题?你能给我一些建议吗?

1 个答案:

答案 0 :(得分:0)

这将解决“列表流”问题。

.map(mapper::toDTO).collect(Collectors.toList())

您的方法返回类型可以更改为

ResponseEntity<?>