hibernate 自身关联 类和配置文件

2025-04-24 12:41:02
推荐回答(1个)
回答1:

单项的配置many-to-one吧,如果是一对一,还要在里面写unique="true",本来是多对一,但是加上unique="true",就表示唯一,那就是一对一了。
如果是双向关联,则要在另外一边配置one-to-one,property_ref="linker",property_ref=""相当于mappedBy,就是指定由哪一方来维护双方的关系。
写配置文件累死了,而且时不时有一些错误,直接用Annotation方便得多,其实hibernate帮助文档上提供了很多例子,要学会穿一手鞋,主动学习放弃被动灌输。

以下是1对1的关系配置
一对一:(少用,可以合成一张表,数据库表一般设计成单向外键关联或主键关联)
外键关联:
单向:@OneToOne @JoinColumn指定外键列名
双向:@OneToOne(MappedBy,意思是由哪边维护关联关系,相当与xml中的inverse)
(property_ref相当于MappedBy) 两个都用也会生成两个外键

注意:
1、对于双向关联除了双向主键关联,annotation必须加MappedBy(否则会产生冗余外键)
2、设置MappedBy还可以在添加的时候由对方设置关联不再需要两边都设置