问题描述
- hibernate的关联关系,是否数据库表中有外键没有关系?
- hibernate的关联关系,是否数据库表中有外键没有关系?
昨天使用了hibernate做了一个多对一的关系,然后在做数据库字段的时候,一开始并没有去建立外键约束,只是把关联字段的信息放了上去,然后CRUD操作都没问题,然后看了一篇帖子,上面看到数据库表中有外键约束,这时候才想起来这个事情,我加了外键以后也没什么问题,再去掉还是没有问题,那么这里是加还是不加外键呢?hibernate自己处理好了吗?有什么区别吗?以后是加好还是不加好呢?谢谢各位了。
解决方案
Hibernate中的级联关系和数据库中表之间的外键关系完全是两回事。
数据库中设置外键主要是为了实现外键约束。
Hibernate中的级联关系主要是为了实现ORM的自动查询和存储相关表的数据。
解决方案二:
Hibernate会根据配置自动管理表之间的关联关系的。
其实Hibernate会根据注解自动创建表以及外键关系的,我们只要java实体及配置就行了。
解决方案三:
外键属于数据库设计时需要做的东西,这个不管Hibernate会不会帮你实现,都需要在数据库中自己手动添加,这个是为了保证数据库的约束条件。个人理解
时间: 2024-12-31 01:34:03