Java 从Hibernate映射文件中绘制ERD

Java 从Hibernate映射文件中绘制ERD,java,mysql,hibernate,netbeans,erd,Java,Mysql,Hibernate,Netbeans,Erd,我知道可以将数据库反向工程到映射文件中,但有人知道是否可以让hibernate基于其自己的映射文件绘制ERD,以便我可以将hibernate的ERD与数据库的ERD进行比较吗?我通过使用: <property name="hibernate.hbm2ddl.auto">create-drop</property> createdrop 在我的hibernate.cfg.xml中 然后我使用MySQL Workbench对Hibernate创建的数据库中的ERD进行反向

我知道可以将数据库反向工程到映射文件中,但有人知道是否可以让hibernate基于其自己的映射文件绘制ERD,以便我可以将hibernate的ERD与数据库的ERD进行比较吗?

我通过使用:

<property name="hibernate.hbm2ddl.auto">create-drop</property>
createdrop
在我的hibernate.cfg.xml中


然后我使用MySQL Workbench对Hibernate创建的数据库中的ERD进行反向工程。

是的,这是可能的。据我所知,您不能直接从映射中执行,而是必须首先生成数据库

你要做的很简单:

  • 通过映射创建数据库
  • 打开(或下载)MySQL工作台
  • 创建新的数据库模型关系图
  • 转到数据库>反向工程并填写数据库详细信息
  • 接下来的步骤对你来说应该很容易

  • 默认情况下,hibernate创建MySql MyIsam数据库,该数据库具有内部连接而不是外键,因此MySql WORCKBENCH或VISUAL PARADIGM不会使用连接正确显示ERD请确保在参考资料中的application.properties中创建此语句

    spring.jpa.hibernate.ddl-auto = update
    
    spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL55Dialect
    
    而不是

    spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
    

    这创造了MyISAM,注意双5这是改变模式的关键

    你只是在重复我说的。