我对休眠注释映射有很大的问题。这是我的图表:
至于映射对象,很少有人简单,因为它的 1...N 为:
TASK_DEF -> REPORT_DATA
REPORT_DATA -> REPORT_DATA_COLUMN
REPORT_DATA -> REPORT_DATA_VALUE
对吗?
现在的问题是当我尝试将 Collection 映射REPORT_DATA_VALUE
到REPORT_DATA_COLUMN
. 我试过这样:
@OneToMany(fetch = FetchType.LAZY)
@ForeignKey(name = "FK_REPORT_DATA_VALUE_REPORT_DA", inverseName = "PK_REPORT_DATA_COLUMN")
@JoinTable(name = "REPORT_DATA_VALUE", joinColumns = {
@JoinColumn(name = "REPORT_DATA_ID"),
@JoinColumn(name = "COLUMN_NM")
}, inverseJoinColumns = {
@JoinColumn(name = "REPORT_DATA_ID"),
@JoinColumn(name = "COLUMN_NM")
})
List<ReportDataValue> reportDataValueList;
但是hibernate选择了错误的标识,因此无法执行查询。有人可以帮我解决这个问题吗?