【问题标题】:Draw an ERD from Hibernate Mapping Files从 Hibernate 映射文件中绘制 ERD
【发布时间】:2012-06-20 13:15:53
【问题描述】:

我知道可以从数据库逆向工程到映射文件,但有谁知道是否可以让 hibernate 根据自己的映射文件绘制 ERD,以便我可以将 Hibernate 的 ERD 与数据库的 ERD 进行比较?

【问题讨论】:

    标签: java mysql hibernate netbeans erd


    【解决方案1】:

    默认情况下,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 这是改变模式的关键

    【讨论】:

      【解决方案2】:

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

      你要做的很简单:

      1. 通过映射创建数据库
      2. 打开(或下载)MySQL Workbench
      3. 创建一个新的数据库模型图
      4. 转到数据库 > 逆向工程并填写您的数据库详细信息。
      5. 接下来的步骤对您来说应该很容易

      【讨论】:

      • 你只是在重复我说的话。
      【解决方案3】:

      我通过以下方式实现了这一点:

      <property name="hibernate.hbm2ddl.auto">create-drop</property>
      

      在我的 hibernate.cfg.xml 中

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多