【问题标题】:Why we need Jackson api for JSON Response View in Spring MVC为什么我们需要 Jackson api 用于 Spring MVC 中的 JSON 响应视图
【发布时间】:2015-04-25 01:39:06
【问题描述】:

目前我正在寻找一个带有 JSON 响应视图的 Spring MVC 示例,大多数示例都是关于 JSON 响应视图的 Jackson API。我不明白为什么我们需要 Jackson API 来将响应返回为 JSON。有没有其他方法可以在响应中返回 JSON 视图?而且我不明白当我们使用 Jackson 时,它是如何呈现为 JSON 数组值作为响应的。谁能让我在哪里可以得到一个清晰的想法。

【问题讨论】:

  • @erhun 你好,我只是想让你知道我回滚了你的编辑,因为它没有任何改进。添加内联代码格式是为了代码,而不是像 JSON 和 Spring MVC 这样的技术词汇。
  • @ProgramFOXOk 谢谢你的信息,我知道了。

标签: json spring spring-mvc jackson


【解决方案1】:

你不必为你的 Spring MVC 项目使用 Jackson API,对我来说最简单的一个是 JSONObject 这是 source 和一些例子 mkyong 你可以轻松地创建 Json 对象并通过这种方式解析它.

JSONObject sessionJSonObj =new JSONObject().put("session", "session") ;
String sessionJSonObj = (JSONObject) querySessionJSonObj.get("session");

而且我不明白我们在使用 Jackson 的时候是如何看待它的 在响应中呈现为 JSON 数组值?

实际上JACKSON 为您提供了一个API,您可以使用它轻松地进行JSON 操作,例如JSONObjectGSON 或其他JSON APIs。其他 API 也具有这种用于数组操作或其他数据类型的功能。

【讨论】:

  • 非常感谢erhun :) 但我没有使用任何会话来存储和检索它,我使用@ResponseBody 注释将它作为字符串返回。
【解决方案2】:

正如二浑所说,您不需要 Jackson API。事实上,Spring MVC 只有在类路径中找到 Jackson 库时才会使用它们。

当您使用 @ResponseBody 时,您是说该方法的返回值直接序列化为 HTTP 响应的正文。接下来是适当的 HttpMessageConverter 实现将返回的类型转换为协商的内容类型。

Spring 在配置负责转换的转换器方面为您提供了充分的灵活性。以下blog post 描述了如何配置自己的自定义转换器。解释是针对自定义 XML 转换器的,但对于任何内容类型都类似

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多