如何在Hibernate框架中正确生成xml

问题描述 投票:1回答:2

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

我有2个想法,但你可能会建议更有经验的方法解决这个问题。

  1. 使用select中的FOR XML在db层生成xml。 - >这里我不知道select在hibernate中会有什么结果......?串?不知道。
  2. 从DB中检索列表,然后使用java将此列表转换为xml,例如使用此> https://www.javatpoint.com/jaxb-marshalling-example

你有什么建议?谢谢

java xml hibernate
2个回答
0
投票

有许多不同的参数可以作为决定最佳方法的基础(例如,重要的是与数据库无关吗?是否提供了任何xml架构作为生成输出的基础?如何使用输出/ access?等)

如果您要生成的输出类似于数据的普通转储,并且将来会将数据导入数据库(或类似的用法),那么可能只需在数据库层生成输出就足够了。但大部分时间情况并非如此。我强烈建议在应用程序层生成输出,以便您可以更好地控制以后生成和自定义的方式。您可以使用普通的hibernate查询获取数据,并使用(如您所述)JAX-B将其序列化为XML。


0
投票

我不会在数据库级别生成XML。由于您已经在使用Hibernate,因此您可以将实体对象转换为数据传输对象(DTO),它基本上是同一个对象,但这一次是为了由库进行编组和解组。而不是JAXB,你可能想看看杰克逊,这是一个更容易使用(谷歌为xml jackson),如果有人决定输出应该是JSON或YAML,它很容易改变。

© www.soinside.com 2019 - 2024. All rights reserved.