Spring boot 创建一个JSONObject:Spring boot
我想创建一个Spring boot 创建一个JSONObject:Spring boot,spring-boot,Spring Boot,我想创建一个JSONObject: @RequestMapping(value = "/test", method = RequestMethod.GET) @ResponseBody public JSONObject Test() { JSONObject test = new JSONObject(); test.put("name","caroline"); return test; } 结果给了我: {&qu
JSONObject
:
@RequestMapping(value = "/test", method = RequestMethod.GET)
@ResponseBody
public JSONObject Test() {
JSONObject test = new JSONObject();
test.put("name","caroline");
return test;
}
结果给了我:
{"map":{"name":"caroline"}}
但我一直在等待这样的事情:
{"name":"caroline"}
我不知道问题出在哪里,我只是遵循了创建类的方法
类MyResponseClass{
私有字符串名称;
公共MyResponseClass(字符串名称){
this.name=名称;
}
公共字符串getName(){
返回名称;
}
公共void集合名(字符串名){
this.name=名称;
}
}
首字母:
@RestController
类MyController{
@GetMapping(“/test”)
公共MyResponseClass getMyResponseClass(){
最终MyResponseClass测试=新MyResponseClass(“caroline”);
回归试验;
}
}
我建议您阅读本文:您可以通过创建一个类来完成
类MyResponseClass{
私有字符串名称;
公共MyResponseClass(字符串名称){
this.name=名称;
}
公共字符串getName(){
返回名称;
}
公共void集合名(字符串名){
this.name=名称;
}
}
首字母:
@RestController
类MyController{
@GetMapping(“/test”)
公共MyResponseClass getMyResponseClass(){
最终MyResponseClass测试=新MyResponseClass(“caroline”);
回归试验;
}
}
我建议您阅读这篇文章:我在一个示例spring boot项目中尝试了您的代码,但发现了错误
No converter for [class org.json.JSONObject]
这个错误的原因解释得很清楚。重申一下答案,JSONObject类没有getter,因此会出现错误。默认情况下,spring boot starter web依赖项具有Jackson web支持,可以将任何POJO类转换为JSON对象。因此,正如@süleyman的答案所示,使用POJO是正确的处理方法
在这种情况下,您不能使用POJO类,因为响应中的字段对于每个请求都是不同的。例如,您必须发送
{"a": "b"}
对于一个响应和
{"c": "d"}
对于另一个响应,您可以始终使用这样的映射
@RequestMapping(value=“/test”,method=RequestMethod.GET)
@应答器
公共地图测试(){
Map test=newhashmap();
测试。输入(“姓名”、“卡罗琳”);
回归试验;
}
反应是这样的
{“name”:“caroline”}
我在一个示例spring boot项目中尝试了您的代码,但发现了错误
No converter for [class org.json.JSONObject]
这个错误的原因解释得很清楚。重申一下答案,JSONObject类没有getter,因此会出现错误。默认情况下,spring boot starter web依赖项具有Jackson web支持,可以将任何POJO类转换为JSON对象。因此,正如@süleyman的答案所示,使用POJO是正确的处理方法
在这种情况下,您不能使用POJO类,因为响应中的字段对于每个请求都是不同的。例如,您必须发送
{"a": "b"}
对于一个响应和
{"c": "d"}
对于另一个响应,您可以始终使用这样的映射
@RequestMapping(value=“/test”,method=RequestMethod.GET)
@应答器
公共地图测试(){
Map test=newhashmap();
测试。输入(“姓名”、“卡罗琳”);
回归试验;
}
反应是这样的
{“name”:“caroline”}
我希望你说的是org.json
包
如果您真的想使用JSONObject来创建JSON,那么下面的代码可以工作。只是可以将返回类型从JSONObject更改为String
@RequestMapping(value = "/test", method = RequestMethod.GET)
@ResponseBody
public String Test() {
JSONObject test = new JSONObject();
test.put("name","caroline");
return test.toString();
}
我希望你说的是
org.json
package
如果您真的想使用JSONObject来创建JSON,那么下面的代码可以工作。只是可以将返回类型从JSONObject更改为String
@RequestMapping(value = "/test", method = RequestMethod.GET)
@ResponseBody
public String Test() {
JSONObject test = new JSONObject();
test.put("name","caroline");
return test.toString();
}
你可以试试这个
1-在pom.xml中添加此依赖关系
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.1</version>
</dependency>
}
2-Java对象到JSON
ObjectMapper objectMapper = new ObjectMapper();
Car car = new Car("yellow", "renault");
objectMapper.writeValue(new File("target/car.json"), car);
结果必须是这样的:
{"color":"yellow","type":"renault"}
3-JSON到Java对象
String json = "{ \"color\" : \"Black\", \"type\" : \"BMW\" }";
Car car = objectMapper.readValue(json, Car.class);
你可以试试这个
1-在pom.xml中添加此依赖关系
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.1</version>
</dependency>
}
2-Java对象到JSON
ObjectMapper objectMapper = new ObjectMapper();
Car car = new Car("yellow", "renault");
objectMapper.writeValue(new File("target/car.json"), car);
结果必须是这样的:
{"color":"yellow","type":"renault"}
3-JSON到Java对象
String json = "{ \"color\" : \"Black\", \"type\" : \"BMW\" }";
Car car = objectMapper.readValue(json, Car.class);
是的,我在使用org.json包,你可以在这里找到我真正的问题,如果我做“test.toString();”在我的情况下,我的geojson不正确,它会给我一些看起来不像geojsonYa的东西。我在使用org.json包,你可以在这里找到我真正的问题,如果我做“test.toString();”在我的情况下,我的geojson不正确,你可以在这里找到我真正的问题,你可以看看:你可以在这里找到我真正的问题,你可以看看:你可以在这里找到我真正的问题,你可以看看:你可以在这里找到我真正的问题,你可以看看:你可以在这里找到我真正的问题,你可以看一下:你可以在这里找到我真正的问题,你可以看一下:我面临着这样一个问题,但它不是在同一个主题上,事实上,我努力通过替换函数来解决它如果找不到解决的问题,你可以试着这样做祝你好运@work你可以在这里找到我真正的问题,你能看一看吗:我面临着这样的问题,但它不是在同一个主题上,事实上,我通过替换函数来解决它,如果你的问题没有解决,你可以尝试这种方法祝你好运@work