【问题标题】:Should we use jersey-media-json-jackson or jackson-jaxrs-json-provider in Jersey 2.5.1?我们应该在 Jersey 2.5.1 中使用 jersey-media-json-jackson 还是 jackson-jaxrs-json-provider?
【发布时间】:2014-02-20 07:04:29
【问题描述】:

根据 jersey 规范,我们可以使用 jersey-media-json-jackson 来序列化/反序列化 json/pojo,但是从 StackOverflow 中的某个线程,我们也可以使用 jackson-jaxrs-json-provider 2.2.3

您能告诉我们应该使用哪一个吗?

谢谢,

【问题讨论】:

  • 我认为jersey-media-json-jackson 是更好的选择,我尝试了jackson-jaxrs-json-provider ...但tomcat和码头因not found for media type=application/json而失败...似乎在普通的servlet容器上不会自动找到它
  • 这是一篇旧帖子,但@wutzebaer,你说的完全正确。

标签: serialization jersey pojo


【解决方案1】:

正确的做法是在你的 maven 配置中使用这样的东西(当然,如果你使用的是 maven):

...
<properties>
    <jersey.version>2.5.1</jersey.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
...
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.glassfish.jersey</groupId>
            <artifactId>jersey-bom</artifactId>
            <version>${jersey.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
<dependencies>
    <dependency>
        <groupId>org.glassfish.jersey.media</groupId>
        <artifactId>jersey-media-json-jackson</artifactId>
        <version>${jersey.version}</version>
    </dependency>
    ...

TL;DR - 你应该使用 jersey-media-json-jackson 2.5.1

直接使用 jackson 库可能会破坏 jersey 的一些自动发现功能。

【讨论】:

  • 感谢 ingenious,我知道如何配置以使它们工作,但是我期待它们之间的比较以获得一个好的决定。请注意,jackson jaxrs provider 2.2.3 提供自动注册功能以及 jersey media jackson
猜你喜欢
  • 1970-01-01
  • 2017-11-18
  • 1970-01-01
  • 1970-01-01
  • 2015-01-16
  • 2014-09-17
  • 1970-01-01
  • 2016-05-19
  • 1970-01-01
相关资源
最近更新 更多