один в один с двумя встраиваемыми и разными именами ключей в спящем режиме - PullRequest
0 голосов
/ 11 июля 2019

У меня есть две таблицы,

В каждой таблице есть два ключевых поля

Имена ключей полей различны для двух таблиц

Как связать их с аннотацией @OneToOne

class a {

@EmbeddedId
private Apk id

}

class b{

@EmbeddedId
private Bpk id;

}

@Embeddable
class Apk{

aa;
aaa; 

}

@Embeddable
class Bpk{

bb;
bbb;

}


aa= bb && bb = bbb

1 Ответ

0 голосов
/ 11 июля 2019

Если я правильно понимаю, это должно работать для вас.Убедитесь, что и APK, и BPK содержат Serializable и имеют правильные значения equals и hashCode.

class A {

    @EmbeddedId
    @OneToOne
    @JoinColumns({
        @JoinColumn(name = "aa", referencedColumnName = "bb"),
        @JoinColumn(name = "aaa", referencedColumnName = "bbb")
    })
    private APK aID;

}

class B {

    @EmbeddedId
    @OneToOne(mappedBy = "aID")
    private BPK bID;

}
...