[JPA 2] Mapowanie wiele do wielu przez tabelę z dodatkowymi danymi

0

Mam następującą sytuację w bazie danych:
http://img204.imageshack.us/img204/7558/przykladd.png</img>

W jaki sposób zmapować to do obiektów za pomocą JPA 2? W Hibernate nie miałem z tym problemu, tutaj nie znalazłem rozwiązania. Googlałem na ten temat i nie znalazłem nic sensownego i zgrabnie napisanego. Może ktoś się z takim problemem i ma gotowe rozwiązanie?

0

http://en.wikibooks.org/wiki/Java_Persistence/ManyToMany

Tutaj masz ładnie opisany temat mapowania ManyToMany w JPA, jakbyś miał jeszcze jakieś problemy to wrzuć jakiś kod to postaram się zweryfikować co może być źle :).

0

Dopiero dzisiaj miałem czas żeby to zrobić i po pewnych zmianach w stosunku do tego, co jest w linku, udało się. Dzięki.

Teraz mam inny problem. Chcę połączyć dwie tabele relacją wiele do wielu, ale bez dodatkowego stanu, w związku z tym chciałbym wykorzystać adnotację @ManyToMany. Relacje wyglądałyby identycznie, jak na obrazku z mojego wcześniejszego posta. Czy da się jakoś ustawić na id-kach tej tabeli klucz główny? Jedyne rozwiązanie jakie do tej pory znalazłem to:
Klasa Employee:

@ManyToMany
@JoinTable(name = "proj_emp", 
		joinColumns = @JoinColumn(name = "employee_id", referencedColumnName = "id"),
		inverseJoinColumns = @JoinColumn(name = "project_id", referencedColumnName = "id"),
		uniqueConstraints = @UniqueConstraint(columnNames = {"employee_id", "project_id"}))
private List<Project> projects;

Niby mam te unique, ale jednak wolałbym mieć jasno zdefiniowany klucz główny złożony z dwóch id-ków i jednocześnie żeby te kolumny były kluczami obcymi. Da się? Znowu sporo się naszukałem i znalazłem tylko rozwiązanie z uniqueConstraints.

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