Объект JPA с составным первичным объектом, который также является внешним ключом той же таблицы - PullRequest
0 голосов
/ 18 октября 2018

У меня есть две таблицы A и B. В таблице A есть два столбца, col1 и col2 (оба столбца являются первичным ключом, то есть составным с col1 и col2).В таблице B есть один столбец, на который указывают оба столбца из таблицы A, т.е. col1 и col2 являются внешними ключами по отношению к столбцу в таблице B.

Как реализовать сущность JPA для таблицыA?

Спасибо

1 Ответ

0 голосов
/ 18 октября 2018

Ну, вы можете достичь этого с помощью следующего кода:

@Embeddable
public class AID {
    public int xID;
    public int yId;
}

@Entity
public class A {
    @EmbeddedId
    public AID id;

    @OneToMany(mappedBy="A")
    public Collection<B> b;
}


@Entity
public class Meeting {
    @ID
    @GeneratedValue
    public Long id;

    @MapsId("aID")
    @JoinColumns({
        @JoinColumn(name="xID", referencedColumnName="xID"),
        @JoinColumn(name="yId", referencedColumnName="yId")
    })
    @ManyToOne
    public A a;
}
...