【问题标题】:Generate hibernate entity beans from XSD从 XSD 生成休眠实体 bean
【发布时间】:2012-07-05 20:16:29
【问题描述】:

我的要求是将大量 XML 值保存到数据库中。
在分析了几个选项后,我最终确定了从巨大的 xml 生成实体 bean 类,然后使用休眠将其持久化。
我选择不创建 hbm 文件并使用休眠注释。这样,我将使用 XSD 从 XSD 生成 Java 类JAXB 和他们手动添加休眠注释。
是否有任何 Eclipse 插件或 util 框架可以从 XSD 生成带有默认休眠注释的实体类?

【问题讨论】:

    标签: xml hibernate jaxb


    【解决方案1】:

    这里有一些文档:

    http://confluence.highsource.org/display/HJ3/Making+schema-derived+classes+ready+for+JPA

    http://java.net/projects/hyperjaxb

    这是我已完成的项目的工作示例:

      <plugin>
        <groupId>org.jvnet.jaxb2.maven2</groupId>
        <artifactId>maven-jaxb2-plugin</artifactId>
        <version>0.7.4</version>
        <dependencies>
                      <dependency>
                              <groupId>org.jvnet.hyperjaxb3</groupId>
                              <artifactId>hyperjaxb3-ejb-plugin</artifactId>
                              <version>0.5.5</version>
                      </dependency>
                </dependencies>
        <executions>
          <execution>
            <id>generate-domain1</id>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <strict>false</strict>
              <schemaIncludes>
                <value>account.xsd</value>
                <value>customer.xsd</value>
                <value>address.xsd</value>
              </schemaIncludes>
              <bindingIncludes>
                <include>domain-bindings.xjb</include>
              </bindingIncludes>
              <extension>true</extension>
              <generatePackage>your.package.here</generatePackage>
              <generateDirectory>${project.build.directory}/generated-sources/jaxbandjpa</generateDirectory>
              <args>
                <arg>-Xannotate</arg>
                <arg>-Xhyperjaxb3-ejb</arg>
               </args>                  
               <plugins>
                <plugin>
                  <groupId>org.jvnet.jaxb2_commons</groupId>
                  <artifactId>jaxb2-basics</artifactId>
                  <version>0.6.0</version>
                </plugin>
                <plugin>
                  <groupId>org.jvnet.jaxb2_commons</groupId>
                  <artifactId>jaxb2-basics-annotate</artifactId>
                  <version>0.6.0</version>
                </plugin>
              </plugins>
            </configuration>
          </execution>
        </executions>
      </plugin>
    

    希望对你有帮助

    【讨论】:

      【解决方案2】:

      您可以使用 HyperJAXB 生成带有 JPA 注释的 JAXB 模型。 Hibernate 实现了 JPA 规范:

      【讨论】:

      • 我在谷歌搜索这个问题时确实找到了它,但不知道如何开始使用它甚至下载它?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-13
      • 1970-01-01
      • 2011-08-09
      相关资源
      最近更新 更多