pobranie wyników z joinem nazwą metody

0

hej

mam tabele CATEGORY i tabele CATEGORY_TEST

CATEGORY:
	id    name
	
	CATEGORY_TEST:
	category_id       test_id

potrzebuje wyświetlić wyniki takie:

select * from CATEGORY c join CATEGORY_TEST ct on c.id=ct.category_id

da się to zrobić za pomoca nazwy metody w springu? coś ala findBy...

0

Wydaje mi się, że nie ma czegoś takiego. Rozumiem, że mówisz o Spring Data. Musisz sobie dodać adnotacje @Query i samemu napisać joina. Poczekaj jeszcze aż ktoś inny sie wypowie bo nie mam 100% pewności

0

hmmm to jak to zrobic za pomoca @Query
dodam że w encji Category mam

@ElementCollection(fetch = FetchType.LAZY)
	@JoinTable(name = "CATEGORY_TEST")
	@JoinColumn(name = "CATEGORY_ID")
	@Column(name = "TEST_ID")
	private Set<Integer> testIds;
0

Piszesz zwykłe zapytanie.

@Query(select * from CATEGORY c join CATEGORY_TEST ct on c.id=ct.category_id)
public List<> getDataFromCategory()

Później wystarczy, że wywołasz metodę getDataFromCategory a spring wykona to zapytanie umieszczone w adnotacji Query
Tu masz kilka przykładów: https://stackoverflow.com/questions/19977130/joining-two-table-entities-in-spring-data-jpa

1 użytkowników online, w tym zalogowanych: 0, gości: 1