gpt4 book ai didi

java - 在 Hibernate 中使用 @SecondaryTable 时出现问题

转载 作者:行者123 更新时间:2023-11-30 05:16:51 25 4
gpt4 key购买 nike

我的架构的缩写版本:

utility_company
id int not null -- PK
name varchar(255) not null

utility_settings
utility_id -- FK to utility
use_magic tinyint(1) not null default 0

这两个表之间存在一对一的映射关系。抛开这一设计的适用性不谈,我想将这两个表中的数据映射到一个对象。在 Hibernate/JPA 中,据称是按如下方式完成的:

@Entity
@Table(name = "utility_company")
@SecondaryTables({
@SecondaryTable(
name = "utility_settings",
pkJoinColumns = {
@PrimaryKeyJoinColumn(
name="utility_id", referencedColumnName="id")
})
})
public class UtilityCompany extends AbstractEntity {

等等。

每个@Column都包含适当的表名称。

当我部署时,我收到此错误:

Cannot find the expected secondary table: 
no utility_company available for poscore.model.UtilityCompany

utility_company 表肯定存在(以前的版本仅将 UtilityCompany 映射到 utility_company 表;我正在添加 实用程序设置)。

发现许多论坛帖子都有这个确切的问题,但没有答案。我还尝试了各种据称合法的指定 @SecondaryTable 的形式,所有这些都具有相同的效果。

有人成功使用@SecondaryTable,如果是的话,看到过这个吗?

最佳答案

“每个@Column 都包含适当的表名称。”

尝试删除第一个表名称列的显式表名称,仅为辅助表列指定它。为我做了这个伎俩。

关于java - 在 Hibernate 中使用 @SecondaryTable 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/709970/

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