gpt4 book ai didi

java - Spring MVC : How to populate my Object with JSON

转载 作者:行者123 更新时间:2023-11-30 03:47:33 25 4
gpt4 key购买 nike

我有一个需要对象的更新方法(AJAX 服务)。该对象由 JSon 填充,我想测试它,但我不能..

我使用 spring mvc 来设置我的服务。

我的服务:

    @RequestMapping(value="texte/updateMyObject", method= RequestMethod.POST, consumes = "application/json;charset=UTF-8")
public void updateMyObject(MyObject myObject) throws IOException {

logger.info("UPDATE !!!");

}

我的对象:

public class MyObject {
private Integer id;
private String name;

public MyObject(){}

// getter & setter

}

我使用 Postman(chrome 工具)来测试我的服务:https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm

我想我必须发送好的 JSON,但我不知道是哪一个。

目前我已经测试了这种模式:

"MyObject" : {"id" : "1", "name" : "test"}

或者 {“id”:“1”,“名称”:“测试”}

编辑 1:

当我的服务被调用时,myObject的字段都是空的。

编辑2:

我玩这种HTTP请求:

POST /myapp/texte/updateMyObject.sp HTTP/1.1
Host: localhost:8080
Content-Type: application/json; charset=UTF-8
Cache-Control: no-cache

{"id" : "1", "name" : "test"}

编辑3:

我的配置 spring 在我的 web.xml 中。如果您需要我的背景信息,请询问我。

<servlet>
<servlet-name>springMvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:spring/applicationContext-springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>springMvc</servlet-name>
<url-pattern>*.sp</url-pattern>
</servlet-mapping>

编辑4:我做了以下测试来向您展示我的对象未填充。

enter image description here

最佳答案

您需要将 JSON 反/序列化器库链接到您的项目,例如 jackson :

<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.12</version>
</dependency>

然后,使用以下 Controller :

@RequestMapping(value = "texte/updateMyObject", method = RequestMethod.POST, consumes = "application/json")
public void updateMyObject(@RequestBody MyObject myObject) {
// ...
}

发送请求时,例如:

POST /texte/updateMyObject
headers:
Content-Type: application/json
data:
{ "id" : "1", "name" : "test" }

myObject 应被填充。

关于java - Spring MVC : How to populate my Object with JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25247228/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com