我有mysql数据库,其中有3个表:books-包含唯一id;评论-有外键,与书籍有关;销售-有外键,与书籍有关。
mysql workbench正确显示了3个表之间的关系:
逆向工程中的关系
但是,当我在intellij中创建新的hibernate项目时,它不识别外键,也不在代码中实现它们:
新建hibernate项目
配置
(注意:包括图书id复选框也没有帮助)
生成项目后,“salesentity”和“ReviewEntity”类中的对应外键没有属性:
销售表Map
查看表Map
生成的hibernate.cfg.xml文件:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.url">jdbc:mysql://localhost:3306/mikodb</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<mapping class="com.BooksEntity"/>
<mapping class="com.ReviewsEntity"/>
<mapping class="com.SalesEntity"/>
<!-- DB schema will be updated if needed -->
<!-- <property name="hbm2ddl.auto">update</property> -->
</session-factory>
</hibernate-configuration>
当我尝试向现有项目添加hibernate框架支持时,也会出现同样的情况。外键在数据库Map过程中丢失的原因是什么?
暂无答案!
目前还没有任何答案,快来回答吧!