与@joincolumn一起发布,其中列具有相同的名称jpamapping

bakd9h0s  于 2021-06-29  发布在  Java
关注(0)|答案(1)|浏览(307)

我需要一些指导。我在这个数据库中有下一个数据库(对不起,我还不能上传图片),有些列有相同的名称(例如iddireccion),但是在服务器端,外键的定义是这样的。
我遇到的问题是因为springboot检测到列具有相同的名称,我不知道´我不知道Map数据库时是否遗漏了什么。我知道这是关于列名的,因为我改变了它们,它“工作”,但我宁愿不修改数据库结构。
下面是java代码
我想澄清一些事情。我不希望程序在数据库中创建或更改任何内容。我只希望它能够插入和编辑数据。
对不起,如果我不够清楚,英语不是我的主要语言。
这是我得到的错误。

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'iCita' defined in mx.com.interfaces.iCita defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaMappingContext' while setting bean property 'mappingContext'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaMappingContext': Invocation of init method failed; nested exception is org.hibernate.MappingException: Unable to find column with logical name: idEmpresa in org.hibernate.mapping.Table(Empresa) and its related supertables and secondary tables
u3r8eeie

u3r8eeie1#

不能有两个Map修改同一列 idDireccion . 就目前的情况来看, Planta 当前使用两个Map来Map,这两个Map修改了该列;直接Map:

@Column(name="idDireccion")
private int idDireccion;

以及多对一Map:

@ManyToOne(...)
@JoinColumn(name="idDireccion", referencedColumnName="idDireccion")
private Direccion direccion;

您可能需要删除直接Map。
此外,问题中的错误似乎与此问题无关(“找不到逻辑名称为:idempresa…的列”)。还是我误解了你的问题?

相关问题