OneToOne单向
实体类
one
one 维护关系映射文件
one
one维护关系测试add
add添加成功。
add上述add:
如果person有对应的卡,再次添加卡的时候违背了unique的关系则会添加出错,
如果person没有对应的卡,则会添加成功。
OneToOne双向:
实体类:
person IDCard映射文件:
person IDCard测试add
addadd
load
此时会发出一条sql语句。
由于person端没有维护关系,hibernate会自动完成jion操纵,只发出一条sql语句
load此时会发出三条sql语句。
因为维护关系的那一端会延迟加载。使用维护关系端取数据,在通过延迟加载取关联对象的时候,会同时 再去取原来的关联端,会发三条语句。
最佳实践是:
在one2one的时候,最好不要使用双向关联,
但是如果使用了双相关联,在取数据的时候,最好使用没有关联的那一方。
网友评论