java - 使用 Spring MVC 的注解映射休眠中的问题
问题描述
有人可以向我解释如何正确声明实体注释吗?
数据库中有两个表。一个表具有另一个表的外键id
(@ManyToOne
绑定),两个 ID 都是Integer
。我创建了两个实体来用代码表示它们。
如何将这些实体映射到 DB?我最近意识到 Hibernate 指的是类。我的意思是@JoinColumn("???")
我必须在数据库中写一个列的名称,不是吗?如果实体中的 ID 字段名称与数据库中的名称相同怎么办?提前谢谢大家!问候。
@Entity
@Table(name = "stat")
public class Statistic {
@Id
@Column( name = "statisticId")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long statisticsId;
...............
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn (name="userId") //<------------ The same name.
private User userStat;
//getters and setters + constr + overriding of ToString()
}
@Entity
@Table(name = "usser")
public class User {
@Id
@Column(name = "userId")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long userId;`enter code here`
................
@OneToOne(mappedBy = "userStat")
private Statistic statisticUser;
}
解决方案
推荐阅读
- github - 如何设置 Raspberry Pi 3 B+ 以自动将更新部署到私有 Github 存储库?
- c# - DependencyProperty 更改时重新计算缓存公共属性?
- java - 使用 Rectangle.Intersects 进行碰撞检测会导致对象“粘”在表面上 (Java)
- python - 按升序合并 3 个列表
- javascript - 在 javascript 中创建的表格无法正确显示数据表
- numpy - 用于分类的 2D 数据点的优度度量
- spring - 当我删除弹簧批处理数据时:在封闭的结果集中不允许操作
- javascript - Contenteditable div - 按钮点击事件与其他元素点击事件有何不同?
- java - 如何从相邻文本中获取文本颜色
- java - 如果使用 InputStream 来自 PIPE 的输入结束,如何使(Java)程序自动结束