jquery - Jackson 可以与 Spring MVC 3.0 一起使用来将 RequestBody 绑定(bind)到 Java Bean 吗?

标签 jquery spring-mvc jackson

我有一个非常简单的问题,但我似乎找不到简单的答案:

我让 Jackson 使用 @ResponseBody响应中将 Java beans 序列化为 JSON

>

但是我没有设法使用@RequestBody请求中将JSON序列化回Java beans

例如

// this works fine, Bean is being serialized to JSON 
@RequestMapping(...)
public @ResponseBody Bean getSomething(...){
    //...
}

// I don't know how to make this work, if if there is a way at all
@RequestMapping(...)
public void setSomething(@RequestBody Bean bean, ...){
    //...
}
  1. 这个请求是否可行?
  2. 如果可以,如何配置?
  3. 是否有 JQuery 示例/提示(例如设置正确的内容类型)?

更新:

参见JQuery, Spring MVC @RequestBody and JSON - making it work together配置中的一些怪癖(它适用于 ResponseBody,但不适用于 RequestBody,这没有意义,配置要么正确,要么错误。可能是一个错误?)

最佳答案

  1. 是的,这是可能的。

  2. 如果您的 @ResponseBody 正常工作,您的服务器端配置可能没问题。

  3. 您需要将内容类型设置为 application/json。 JQuery.ajax()方法有一个 contentType 参数。 AJAX 和 Spring 3 的一个很好的示例/摘要可以在 here 找到。 。请注意,他使用的是 $.postJSON 方法,这很可能是 this simple plugin .

关于jquery - Jackson 可以与 Spring MVC 3.0 一起使用来将 RequestBody 绑定(bind)到 Java Bean 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5930894/

相关文章:

javascript - 使用javascript更新div的内容

javascript - jQuery + IE8 = 对象不支持此属性或方法。如何解决这个问题?

javascript - Chartjs 无法在 IE8 中工作,即使包含 excanvas 后也会出现 Canvas 元素问题

java - 如何使用单一表单将属性设置为 2 个域对象,这里 1 个域对象充当 formbacking 对象

java - Jackson 中嵌入的数据对象列表

javascript - select2 默认值不完整

java - 了解 Hybris 中的 Impex 语法语句

java - MethodArgumentNotValidException 的 validator 仅处理相同类型的约束

java - 嵌套的 JSON 对象反序列化为 JSONObject

java - 使用 Jackson 映射 JSON 对象