【问题标题】:JSON To JSON Transformation | Template Engine for JavaJSON 到 JSON 转换 | Java模板引擎
【发布时间】:2015-11-14 23:00:04
【问题描述】:

我需要将传入的 JSON 转换为输出的 JSON。为此,我正在寻找一种可以基于模板工作的解决方案。我的想法是 XSLT 转换行的解决方案,它允许将 XML 转换为样式表定义的所需输出格式(XML、HTML、文本)。

使用 XSLT 的一个选项(或者更确切地说是一种解决方法)是将 JSON 转换为 XML,即:

input JSON -> XML -> transform -> output JSON

这种方法在将 JSON 转换为 XML 时会产生性能开销,并且随着传入对象大小的增加,这种开销会变得很突出。

我找到了一个节点/客户端层解决方案,它可以根据模板中指定的规则转换 JSON。更多细节可以在[这里][1]找到。但是,我找不到任何适用于基于 java 的应用程序的解决方案。

任何关于解决此问题的解决方案/框架方面的想法/帮助都会非常有帮助。

谢谢。

【问题讨论】:

标签: java json xslt transform


【解决方案1】:

您可以尝试JOLT,宣传为用 Java 编写的 JSON 到 JSON 转换库。

或者您可以在thread 中搜索其他可以转换 JSON 的库和工具。

新的XSLT 3.0 draft 还支持将 JSON 作为输入和输出格式。 Saxon 已经开始实施,并且似乎 support 用于 JSON 部分。

【讨论】:

    【解决方案2】:

    您可以尝试JSLT,这是一种转换语言,您可以在其中以 JSON 语法编写输出的固定部分,然后插入表达式以计算您要在模板中插入的值。这与 XSLT 和 XPath 的协同工作方式非常相似。

    它是在 Jackson 之上用 Java 实现的。

    【讨论】:

      【解决方案3】:

      对于简单的转换,您可以使用jmom 库。

      对于复杂的转换,您可以使用 freemarker 等模板框架。 并使用 json 库将 json 数据转换为 Map/List 形式,以便模板框架使用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-09
        • 2016-09-18
        • 2018-07-15
        • 2022-01-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多