【发布时间】:2022-12-20 10:19:43
【问题描述】:
如何在 Spring Boot 中自动将 JSON 响应转换为 POJO(普通旧 Java 对象)?
我们应该为此使用哪个依赖项和 java 类?
【问题讨论】:
-
您是否已经创建了 POJO 类?您如何接收 JSON 响应?
标签: java json spring spring-boot javaee
如何在 Spring Boot 中自动将 JSON 响应转换为 POJO(普通旧 Java 对象)?
我们应该为此使用哪个依赖项和 java 类?
【问题讨论】:
标签: java json spring spring-boot javaee
如果您通过调用某个 REST 端点获取 JSON 数据/响应,则可以直接调用 RestTemplate.getForObject(USER_API, User[].class)。
@Autowired
private RestTemplate restTemplate;
private final String USER_API = "https://jsonplaceholder.typicode.com/users";
@GetMapping("/users")
public User[] consumeAllUser() {
return restTemplate.getForObject(USER_API, User[].class);
}
P.S:确保您的 JSON 对象键必须与您的 POJO 类匹配 多变的。
如果您想使用某个文件中的 JSON 数据,您可以通过在 pom.xml 文件中添加以下依赖项来使用 ObjectMapper。
<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.13.3</version> </dependency>例子:
ObjectMapper objectMapper = new ObjectMapper(); objectMapper.readValue(new File("target/car.json"), User.class);此外,您还可以参考以下内容:
【讨论】: