java - 将 Xml 转换为 JSON 的方法(包含示例)

标签 java xml json xslt

后端系统接受xml格式的请求,并返回一个复杂的响应xml。
Request Xml 和 Response Xml 是通用的并且具有多层。 Xml 元素与 UI 字段没有一对一的映射。 Xml 包含大量元数据(id 等)和图层。
这就是我想出模型 xml 的原因,它是扁平的,并且与 UI 字段具有一对一的映射。
我有以下渲染方法用户界面数据:

  1. UI -> JSON ->ModelXml -> 请求 Xml/如果是响应 XML,则反向流程
    A。使用一些 api 进行 JSON -> ModelXML 转换
    b. ModelXML -> 使用 XSLT 的 RequestXml

  2. UI -> JSON ->RequestXML/如果是响应 XML,则反向流程
    这将是一对一的映射,每当 UI 发生变化时,就需要有人负责 JSON->RequestXML 转换。

Note: UI layout is configurable. Here I am talking 200+ data entry forms.

那么问题是,就更少的开发时间、性能和可维护性而言,哪种方法更好?

是否可以使用 XSLT 处理 JSON <-> XML? 例如:

**Xml Structure**
<RequestXml>
 <Paramateres>
   <Metadata></Metadata>
 </Paramateres>
 <Party>
  <State></State>
  <Person>
    <FirstName></FirstName>
    <LastName></LastName>
  </Person>
  <Address type="Residence">
    <Line1>28 North Main Street</Line1>
    <City>Alberta</City>
  </Address>
  <SSN></SSN>
 </Party>
</RequestXml>

JSON

"ClientInformation":{"FirstName":"Name", "LastName":"Yadav","Line1":"28 North Main Street","City":"Alberta","State":"", "SSN":""}

最佳答案

是的,您可以使用 XSLT 在 JSON 和 XML 之间进行转换。有许多资源可以做到这一点。您可能想看一下 XSLTJSON 。它允许您根据许多不同的约定执行转换。听起来您的上下文是一个频繁使用的 UI(您提到了 200 多个数据输入表单),因此您需要考虑这种类型的转换是否足以满足您的情况。

关于java - 将 Xml 转换为 JSON 的方法(包含示例),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19843500/

相关文章:

java - 在 Java 中从哪里获取 'http' 字符串文字?

java - 当尝试关闭已读取许多对象的只读 session 时,Hibernate 因 OutOfMemory 失败

ios - 如何使变量全局可用 objective c

xml - 使用 XML 模式的优点和缺点是什么?

应用程序的 JavaPos。加载的 JCL 注册表中不存在服务

java - 带有 JPA : hibernate access without schema spécified in entity 的 Hibernate 5

php - 如何合并城市和国家

java - 如何获取json字符串的值,然后通过这个函数解析它

xml - 导入命名空间的 Eclipse WSDL 验证错误

json - 如何通过 Genson/Jersey 配置日期格式化程序?