gpt4 book ai didi

java - 将json对象转换为java对象

转载 作者:行者123 更新时间:2023-12-02 09:58:13 25 4
gpt4 key购买 nike

我有一个这样的请求:

   let jsonData= {};
jsonData["className"]= className;
jsonData["models"]= arr;
let endPoint= "/classses?classAndModel=" + encodeURIComponent(JSON.stringfy(jsonData));
return $.ajax({
url: host + endPoint,
data: data,
cache: false,
contentType: false,
processData: false,
method: "POST"
});

我想将该 json 转换为 java 对象。我尝试了这个

My rest service is: 

@PostMapping(value=/classes",consumes=MediaType.MULTIPART_FORM_DATA_VALUE)
public ResponseEntity<Void> addClassAndModelMapping(ClassAndModels classAndModels){

}


public class ClassAndModels {
ClassAndModelResult classAndModel;

...getter and setter...
}
public ClassAndModelResult {
String className;
List<String> models;

...getter and setters...
}

我收到 400 错误。如果我将该行 ClassAndModelResult classAndModel 更改为 String classAndResult。我得到响应,但我想要对象类型。你有什么想法吗?

最佳答案

代码的第一部分显示您正在将数据作为查询字符串发送。

看看https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/bind/annotation/RequestParam.html

但是考虑到 @PostMapping,您应该在请求正文中发送该数据,并在服务器端执行类似的操作。

@PostMapping("/classes")
public ResponseEntity<Void> addClassAndModelMapping(@RequestBody ClassAndModels classAndModels){
//
}

正如 Phils 所说,您可以在 Controller 上添加 GetMapping 来查看您的 ClassAndModels 是如何序列化的

来源:https://spring.io/guides/tutorials/bookmarks/

附注抱歉我的英语不好,我不是母语人士。

关于java - 将json对象转换为java对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55833149/

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