为什么Hibernate为* -to-many表上的列引用创建序列?

时间:2018-05-19 13:29:02

标签: java hibernate orm hibernate-mapping

大家好!

我遇到了一个奇怪的问题。我正在尝试创建一个简单的数据库模式。但是hibernate为引用* -to-many表中的id-columns的列创建了额外的序列。

我注释了ids @Id@Column(columnDefinition = "serial")@GeneratedValue(strategy = GenerationType.IDENTITY)BIGSERIAL类型创建序列(但我不希望hibernate使用外键创建列BIGSERIAL)。

我的实体有这样的结构

    @Entity
    public class PropertyItem {

        //id's here ...

        @ManyToOne(fetch = FetchType.LAZY)
        @JoinColumn(name = "property_id")
        private Property property;

        //getters and setters ...
    }

    @Entity
    public class Property {

        //id's here ...

        @OneToMany(mappedBy = "property")
        private List<PropertyItem> propertyItems;

        //getters and setters ...
    }

请帮我避免这个:(

谢谢

1 个答案:

答案 0 :(得分:0)

我明白了!

此注释@Column(columnDefinition = "serial")是多余的。