如何在Sping Boot 中Map嵌套的JSON?
cnh2zyt31#
你可以通过粘贴json到java pojo generators在线使用json,然后选择语言和数据库并完成。http://www.jsonschema2pojo.org/
pnwntuvh2#
我假设你想在post请求中发送json数据到API端点。您可以简单地将任何嵌套的JSON结构Map到Java POJO类中。在您的示例中,您有一个对象数组。让我用一个类似的例子来解释。为了简单起见,让我们考虑以下JSON数据。
[ { "property1": "value1", "array": [ { "property2": "value2" } ] } ]
所以首先让我们创建一个dao类来Map这个对象。我们需要创建两个类。
package com.example.demo.nested; import java.util.List; public class NestedObject { private final String property1; private final List<Property> array; public NestedObject() { this.property1 = null; this.array = null; } public NestedObject(String property1, List<Property> array) { this.property1 = property1; this.array = array; } public String getProperty1() { return property1; } public List<Property> getArray() { return array; } @Override public String toString() { return "NestedObject{" + "property1='" + property1 + '\'' + ", array=" + array + '}'; } }
package com.example.demo.nested; import com.fasterxml.jackson.annotation.JsonProperty; public class Property { private final String property2; public Property() { this.property2 = null; } public Property(String property2) { this.property2 = property2; } @JsonProperty("property2") public String getProperty2() { return property2; } @Override public String toString() { return "Property{" + "property2='" + property2 + '\'' + '}'; } }
不要忘记添加no arg构造函数!现在控制器
package com.example.demo; import com.example.demo.nested.NestedObject; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController public class Controller { @PostMapping("/") public List<NestedObject> post(@RequestBody List<NestedObject> request) { System.out.println(request); return request; } }
这对我很有效。请尝试一下,让我知道这是否适合你。
2条答案
按热度按时间cnh2zyt31#
你可以通过粘贴json到java pojo generators在线使用json,然后选择语言和数据库并完成。
http://www.jsonschema2pojo.org/
pnwntuvh2#
我假设你想在post请求中发送json数据到API端点。
您可以简单地将任何嵌套的JSON结构Map到Java POJO类中。
在您的示例中,您有一个对象数组。
让我用一个类似的例子来解释。为了简单起见,让我们考虑以下JSON数据。
所以首先让我们创建一个dao类来Map这个对象。
我们需要创建两个类。
不要忘记添加no arg构造函数!
现在控制器
这对我很有效。请尝试一下,让我知道这是否适合你。