【问题标题】:How to properly generate xml in Hibernate framework如何在 Hibernate 框架中正确生成 xml
【发布时间】:2017-12-18 13:18:13
【问题描述】:

我正在使用 MS SQL 数据库服务器获取数据,并且我有用于数据库映射的 Hibernate 框架。我需要生成特定数据(选择...从...)到 xml,但不知道如何。我尝试在网上搜索,但没有...

我有 2 个想法,但您可以建议更有经验的方法来解决这个问题。

  1. 在选择中使用 FOR XML 在 db 层生成 xml。 -> 这里我不知道在休眠中选择会产生什么结果...?细绳?不知道。
  2. 从 DB 中获取列表,然后使用 java 将该列表转换为 xml,例如使用 this>https://www.javatpoint.com/jaxb-marshalling-example

你有什么建议?谢谢

【问题讨论】:

  • 您可能不需要 xml 定义,因为 Hibernate 也可以使用 JPA 进行映射。

标签: java xml hibernate


【解决方案1】:

有许多不同的参数可以被视为决定最佳方法的基础(例如,独立于数据库是否重要?是否提供了任何 xml 模式作为生成输出的基础?输出进展如何要使用/访问?等)

如果您要生成的输出类似于数据的普通转储,并且将来用于将数据导入数据库(或类似用途),那么也许只是在数据库层生成输出足够。但大多数时候情况并非如此。我强烈建议在应用层生成输出,这样您就可以更好地控制以后生成和定制的方式。您可以使用普通的休眠查询获取数据并使用(如您所提到的)JAX-B 将其序列化为 XML。

【讨论】:

    【解决方案2】:

    我不会在数据库级别生成 XML。由于您已经在使用 Hibernate,您可以将实体对象转换为数据传输对象 (DTO),它基本上是相同的对象,但这次打算由库进行编组和解组。除了 JAXB,你可能想看看 Jackson,它使用起来更容易一些(Google for xml jackson),如果有人决定输出应该是 JSON 或 YAML,它很容易改变。

    【讨论】:

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