首页 > 解决方案 > 使用 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;
    }

标签: javahibernatemappingentities

解决方案


推荐阅读