Hibernate: два внешних ключа в качестве идентификаторов - PullRequest
0 голосов
/ 18 июня 2020

Я определил отношение «многие к одному» между моими тремя классами сущностей catalogB, tableA и tableAB. tableAB имеет составной первичный ключ из tableA.tableAId и catalogB.catalogBId, и я использовал следующий код:

@Entity
@Table(name = "tableAB", schema = Constantes.SCHEMA_SOLICITUD,uniqueConstraints = {@UniqueConstraint(columnNames = { "tableAId  ", "catalogBId" }) })
public class TableAB implements Serializable {

    private static final long serialVersionUID = 6360131240770014903L;

    @Id
    @ManyToOne(optional = false)
    @JoinColumn(name = "tableAId", referencedColumnName = "tableAId")
    private TableAId tableAId;

    @Id
    @ManyToOne(optional = false)
    @JoinColumn(name = "catalogBId", referencedColumnName = "catalogBId")
    private CatalogBId catalogBId;

И это дает мне ошибку:

Caused by: java.lang.IllegalArgumentException: This class [schema.TableAB ] does not define an IdClass

1 Ответ

0 голосов
/ 18 июня 2020

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

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