Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 冬眠一对一逆转_Java_Hibernate_One To One - Fatal编程技术网

Java 冬眠一对一逆转

Java 冬眠一对一逆转,java,hibernate,one-to-one,Java,Hibernate,One To One,我有两个类A和B,它们通过外键应该是一对一的关系。A有一个_id作为主键,B有一个_id外键 但我希望B类只知道A的身份。B类中没有类型为A的字段,而A类加载整个B类 我上的里达班 @OneToOne @JoinColumn(name="a_id",referencedColumnName="a_id") private B b; 但hibernate试图加入 a.a_id = b.b_id 而不是 a.a_id = b.a_id 你知道如何实现预期行为吗 感谢一对一用于继承类型场景。我不

我有两个类A和B,它们通过外键应该是一对一的关系。A有一个_id作为主键,B有一个_id外键 但我希望B类只知道A的身份。B类中没有类型为A的字段,而A类加载整个B类

我上的里达班

@OneToOne
@JoinColumn(name="a_id",referencedColumnName="a_id")
private B b;
但hibernate试图加入

a.a_id = b.b_id
而不是

a.a_id = b.a_id
你知道如何实现预期行为吗


感谢

一对一用于继承类型场景。我不确定你想在这种情况下使用一对一还是多对一。尝试具有唯一约束的多对一模式。

该模式应适用于:

@OneToOne
@JoinColumn(name="a_id") //better name would be a_fk
private B b;
但几年前,我曾在1:1的关系中遇到麻烦,在这种情况下,我使用了多通作为解决办法:

@ManyToOne
@JoinColumn(name="a_id") //better name would be a_fk
private B b;