gpt4 book ai didi

java - 使用 @SecondaryTable 注解映射实体 Spring Hibernate

转载 作者:行者123 更新时间:2023-12-02 13:20:52 31 4
gpt4 key购买 nike

在我的数据库中,我有两个表,如下所示:

CREATE TABLE IF NOT EXISTS `Lokal` (
`idLokal` int(11) NOT NULL AUTO_INCREMENT,
`Ocena_idOcena` int(11) NOT NULL,
PRIMARY KEY (`idLokal`,`Ocena_idOcena`),
KEY `fk_Lokal_Ocena_idx` (`Ocena_idOcena`)
)


CREATE TABLE IF NOT EXISTS `Ocena` (
`idOcena` int(11) NOT NULL AUTO_INCREMENT,
`Ocena` int(1) DEFAULT NULL,
PRIMARY KEY (`idOcena`)
)

我想使用 @SecondaryTable Hibernate 注释将我的 Lokal 实体映射到此 Ocena 表,我设法实现的是:

@Entity
@Table(name="Lokal")
@SecondaryTable(name = "Ocena", pkJoinColumns=@PrimaryKeyJoinColumn(name="Ocena_idOcena"))
public class Lokal {

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="idLokal")
private int id;
@Column(table="Ocena" ,name="idOcena")
private int rating;

//--Getters and Setters skipped--//

}

但我得到的只是一个错误:

ERROR: Unknown column 'this_1_.Ocena_idOcena' in 'on clause'

我认为我误解了 @SecondaryTable 注释,但这是我的第一个 Spring/Hibernate 应用程序,因此我很高兴获得任何类型的帮助。

最佳答案

试试这个:

@Entity
@Table(name="Lokal")
@SecondaryTable(name = "Ocena", pkJoinColumns=@PrimaryKeyJoinColumn(name="idOcena"))
public class Lokal {

@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="idLokal")
private int id;
@Column(table="Ocena" ,name="rating")
private int rating;

//--Getters and Setters skipped--//

}

关于java - 使用 @SecondaryTable 注解映射实体 Spring Hibernate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43571016/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com