6

有用于将文件映射到 ddl 生成的 Hibernate 工具;ddl 到映射文件等等,但是我找不到任何命令行工具来从 JPA 注释类生成简单的 DDL。

有谁知道一个简单的方法来做到这一点?(不使用 Ant 或 Maven 解决方法)

4

2 回答 2

7

我不确定这是否被认为是一种解决方法,因为您已经在问题中提到了它。您可以使用Hibernate 工具从 JPA 注释类生成 DDL。您只需要休眠工具及其对类路径的依赖关系,并且应该可以使用以下内容:

<target name="schemaexport" description="Export schema to DDL file"
    depends="compile-jpa"> <!-- compile model classes before running hibernatetool -->

  <!-- task definition; project.class.path contains all necessary libs -->
  <taskdef name="hibernatetool" classname="org.hibernate.tool.ant.HibernateToolTask"
      classpathref="project.class.path" />

  <hibernatetool destdir="export/db"> <!-- check that directory exists -->
    <jpaconfiguration persistenceunit="myPersistenceUnitName" />
    <classpath>
      <!--
          compiled model classes and other configuration files don't forget
          to put the parent directory of META-INF/persistence.xml here
      -->
    </classpath>
    <hbm2ddl outputfilename="schemaexport.sql" format="true"
        export="false" drop="true" />
  </hibernatetool>
</target>

另一方面,如果您将 Eclipse 与 Webtools 一起使用并且已正确配置项目设置,则只需右键单击并从上下文菜单中选择Generate DDL 。更多关于Eclipse Dali 网站的信息。

于 2009-01-31T00:20:59.837 回答
4

这里解释了如何使用 hibernate SchemaExport 类来做你想做的事。类似于前面提到的anttask方法,但不是每个人都使用ant。您可以直接从命令行执行此示例代码。

http://jandrewthompson.blogspot.com/2009/10/how-to-generate-ddl-scripts-from.html

希望这可以帮助。

于 2009-10-30T21:30:28.243 回答