一个简单的问题,如果有人可能有这方面的经验:
是否可以不使用Hibernate(具有完整功能) 桌子上的外键......?
在我的情况下,我需要这个,因为我想要reverse engineering a liferay database
和实体,而在liferay中,外键只是弄乱了东西(Liferay不支持外键),所以这将是一个很好的解决方案,如果我可以在一些hibernate参数中关闭外键更改(我知道它不起作用,所以可能需要一些解决方法)
答案 0 :(得分:3)
Hibernate根本不关心外键。无论你有没有都无所谓。假设你有
@Entity
public class Product {
//...
@ManyToOne
@JoinColumn(name = "category_id")
private Category category;
}
然后,只要procuct.category_id的每个值实际引用现有的category.id(或为null),那么一切都会正常工作。当然,通过设置外键约束来实际强制执行它是一个好主意,但Hibernate不需要一个。