2

一个简单的问题,如果有人可能在这个主题上有经验:

是否可以在没有外键的情况下使用 Hibernate(具有完整功能)......?

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

4

1 回答 1

6

Hibernate 根本不关心外键。你有没有没有关系。假设你有

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

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

于 2013-10-27T22:40:31.903 回答