在Jersey中集成JSON绑定的最简单方法是什么?

时间:2017-02-08 08:16:13

标签: java json jersey

根据文档,MOXy现在是在Jersey中集成JSON绑定的默认方式。然而,设置非常痛苦,需要多个外部罐子......

我看过使用杰克逊,但我有类似的问题......

在Jersey中提供JSON支持的最简单的解决方案是什么?

(一个简单的小罐子解决方案会很棒!)

2 个答案:

答案 0 :(得分:0)

如果您正在寻找没有编译依赖关系的JSON库,Google GSON 可能就是那个。

<dependency>
 <groupId>com.google.code.gson</groupId>
 <artifactId>gson</artifactId>
 <version>2.8.0</version>
</dependency>

这是一个相对较小的罐子(227kb)和一个记录良好的项目: https://github.com/google/gson

现在回答您的标题问题,最简单的方法可能是包含 jersey-json (基于jackson),因为它只需添加一个参数即可自动处理您在JSON中的响应转换你的servlet:

<init-param>
    <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
    <param-value>true</param-value>
</init-param>

在控制器的方法上添加注释:

@Produces(MediaType.APPLICATION_JSON) // to convert a bean to json
@Consumes(MediaType.APPLICATION_JSON) // to convert json into your bean

以下针对jersey-json的依赖:

<dependency>
 <groupId>com.sun.jersey</groupId>
 <artifactId>jersey-json</artifactId>
 <version>1.19.3</version>
</dependency>

答案 1 :(得分:0)

使用maven,只需添加依赖项

即可获得json支持(使用moxy)
<dependency>
        <groupId>org.glassfish.jersey.media</groupId>
        <artifactId>jersey-media-moxy</artifactId>
    </dependency>

如果您想要相关库的完整pom,请告诉我