spring - 获取 BeanCreationException:未知实体名称:int:使用 JPA 休眠
问题描述
我是 Hibernate 的新手,我根据表定义编写了一个实体类,如下所示:
@Embeddable
class APK implements Serializable {
private String bId;
private int version; <---THIS IS CAUSING PROBLEM
}
@Entity
@Table(name = "a")
public class A implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
private APK aPK;
@MapsId("bId")
@ManyToOne
@JoinColumn(name = "b_id", referencedColumnName = "id")
private B b;
@MapsId("version")
@Column(name = "version")
private int version;
@Column(name = "name")
private String name;
}
虽然,我正在启动服务器,但出现以下异常:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name
'entityManagerFactory' defined in class path resource
[org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation
of init method failed; nested exception is org.hibernate.AnnotationException: Unknown entity
name: int
在表定义类型中的版本是int
. 但是为了解决这个问题,我什至尝试将版本类型更改为Long
,Integer
但我总是遇到类似的错误。知道我应该如何解决这个问题吗?
解决方案
从 中删除@MapsId("version")
注释private int version;
,原因int
不是Entity
. 有关详细信息,请参阅此处。
推荐阅读
- processing - 碰撞后反弹不起作用,并且物体通过地形剪辑
- c++ - C++ 对象构造——直接初始化与使用“=”操作符,它们是等价的吗?
- c++ - 如何检查对象是否是 C++ 中模板类的实例?
- azure - 为什么 Azure AD B2C 使用代码而不是 id_token 重定向?
- sql - Group By子句SQL中不同条件的比率
- css - 如何使用 Texture Packer sprite sheet / CSS sprites 在 React 中制作动画?
- html - Flutter如何点击网页上的按钮?
- amazon-web-services - AWS 控制台中不显示计算环境
- sympy - 如何将变量作为字符串传递,然后将其用作 sympy 符号?
- javascript - 使用 NodeJS 从另一个网站访问表单