Выборка строк на основе двух сторонних идентификаторов в jpa - PullRequest
0 голосов
/ 09 января 2019

Я использую PostgreSQL в качестве базы данных и хочу извлечь все строки, два столбца которых соответствуют внешнему ключу другой таблицы.

Я отобразил отношение в таблице как:

@JsonIgnore
@ManyToOne
@JoinColumn(name = "projects_id", referencedColumnName="id")
private Projects projects;

@JsonIgnore
@ManyToOne
@JoinColumn(name = "reports_id", referencedColumnName="id")
private Reports reports;

Это метод CRUD, который я определил в интерфейсе:

List<ProjectReportTask> findByProjectsIdAndReportsId(Long id, Long id2);

Но когда я вызываю этот метод, список пуст, а в БД у меня есть записи с обоими идентификаторами

1 Ответ

0 голосов
/ 11 января 2019

Я вижу что-то не так с именованием метода. Однако я столкнулся с похожими проблемами, когда моя сущность использует @NaturalId. Поэтому я бы посоветовал вам написать запрос вручную.

@Query(value="SELECT prt FROM 
ProjectReportTask prt 
WHERE prt.projects.id = ?1 AND prt.reports.id = ?2 ")
List<ProjectReportTask> getProjectReportTask(Long id, Long id2);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...