Я пытаюсь создать REST API, который возвращает список всех транзакций, выполненных пользователем с определенным senderId, но у меня есть некоторые проблемы с получением самого списка.Версия этого прекрасно работает для моего клиента с возрастом в качестве замены для senderId, поэтому я не понимаю, почему это вызывает проблемы.Всякий раз, когда я выполняю поиск с использованием PagingAndSortingRepository, моя страница возвращает пустой JSON, например:
{
"_embedded" : {
"transactions" : [ ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/transactions/search/findTransactionsBySenderId?senderid=1"
}
}
}
У меня есть класс транзакции:
@Entity
public class Transaction {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@JsonIgnore
private Long transactionId;
private Long senderId;
private Account.AccountType senderAccountType;
private Long recipientId;
private double amountTransferred = 0;
private Date transactionDate;
public Transaction() {
}
// Getters & Setters
У меня есть TransactionRepository:
public interface TransactionRepository extends PagingAndSortingRepository<Transaction, Long> {
Iterable<Transaction> findTransactionsBySenderId(@Param("senderId") Long senderId);
}
И TransactionController:
@RestController
public class TransactionController {
// TransactionController
@Autowired
TransactionRepository transactionRepository;
@GetMapping(path = "/transactions")
public Iterable<Transaction> getTransactions() {
return transactionRepository.findAll();
}
@PostMapping(path = "/transactions", consumes = {"application/json"})
public Transaction createTransaction(@RequestBody Transaction transaction) {
transactionRepository.save(transaction);
return transaction;
}
}
И моя БД выглядит так: