用Java

时间:2018-05-23 12:28:34

标签: javascript java json jackson nashorn

在Java中映射JSON对象的最佳方法是什么?我正在谈论像Dozer或MapStruct for JavaBeans这样的东西,但是对于JSON。我找到了这两个项目:

JSON Mapper 1

JSON Mapper 2

但他们是Javascript。因此,将它们嵌入到使用Nashorn运行它们的Java应用程序中是一个好主意吗?或者使用直截了当的杰克逊图书馆更好?但第二个意味着读取JSON,将其映射到Java对象然后将Java对象转换为另一个JSON - 对我来说似乎不太好。

2 个答案:

答案 0 :(得分:1)

您无法在Java中将JSON映射到JSON,因为JSON不是本机数据类型。在某些时候,您必须将JSON解析为Java可以理解的表示形式,以便使用它。

但是,您不需要将其编组为Java对象。您可以阅读JSON树(使用Jackson,GSON等),它将是JSON字符串的面向对象表示。从那里,您可以构建所需的JSON输出。

答案 1 :(得分:0)

有些Java库正在执行Dozer或MapStruct的JSON映射:

Silencio

Sawmill

Jolt