Определить отношения сопоставления с JPA - PullRequest
0 голосов
/ 04 июня 2011

У меня возникают трудности с определением правильного определения следующих отношений с использованием JPA2-карт.

create table TableA {
  id int primary key
  name varchar(255) not null
);

create table TableB {
  x_id int not null REFERENCES TableA(id),
  y_id int not null REFERENCES TableA(id),
  PRIMARY KEY (x_id, y_id)
);

Поскольку используется составной ключ, я знаю, что мне нужно определить сериализуемый класс, такой как FooPK.

@Embeddable 
public class FooPK {
    @Column(name = "x_id", insertable=true, nullable=false)
    private long x_id;

    @Column(name = "y_id", insertable=true, nullable=false)
    private long y_id;
    ...
}

Но я заблудился о том, где определить отношения @OneToMany и @ManyToOne и как правильно записать @JoinColumn () в этом случае.

Оливер

1 Ответ

0 голосов
/ 04 июня 2011

Попробуйте использовать аннотацию @ManyToMany.

Вам не нужно определять промежуточный класс.

Подробнее: http://download.oracle.com/javaee/5/api/javax/persistence/ManyToMany.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...