是否可以在没有外键的情况下使用Hibernate

时间:2013-10-27 21:52:38

标签: hibernate foreign-keys liferay

一个简单的问题,如果有人可能有这方面的经验:

  

是否可以不使用Hibernate(具有完整功能)   桌子上的外键......?

在我的情况下,我需要这个,因为我想要reverse engineering a liferay database和实体,而在liferay中,外键只是弄乱了东西(Liferay不支持外键),所以这将是一个很好的解决方案,如果我可以在一些hibernate参数中关闭外键更改(我知道它不起作用,所以可能需要一些解决方法)

1 个答案:

答案 0 :(得分:3)

Hibernate根本不关心外键。无论你有没有都无所谓。假设你有

@Entity
public class Product {
    //...
    @ManyToOne
    @JoinColumn(name = "category_id")
    private Category category;
}

然后,只要procuct.category_id的每个值实际引用现有的category.id(或为null),那么一切都会正常工作。当然,通过设置外键约束来实际强制执行它是一个好主意,但Hibernate不需要一个。