文章目录
- 1. 基本对象到JSON的转换
- 2. 基本JSON到对象的转换
- 3. 使用注解自定义JSON字段名称
- 4. 序列化时忽略字段
- 5. 处理未知的JSON字段
- 6. 将对象列表转换为JSON
- 7. 在Spring Boot控制器中使用ObjectMapper
- 8. 将JSON文件转换为对象
- 9. 美化打印JSON输出
- 10. 自定义ObjectMapper配置
本文将探讨如何在
Spring Boot
应用程序中使用 ObjectMapper
将 Java对象
转换为 JSON
,以及将 JSON
转换回 Java对象
。它涵盖了关键用例,例如 自定义JSON字段名称
、处理未知属性、处理列表,以及为特殊场景(如日期格式和美化打印)配置 ObjectMapper
。
ObjectMapper是Spring Boot中的一个关键组件,用于将Java对象序列化为JSON,并将JSON反序列化为Java对象。以下是一些常见的ObjectMapper用例及代码示例:
1. 基本对象到JSON的转换
此用例涉及将Java对象
转换为JSON
。
import com.fasterxml.jackson.databind.ObjectMapper;
public class ObjectToJsonExample {
public static void main(String[] args) throws Exception {
ObjectMapper objectMapper = new ObjectMapper();
Employee employee = new Employee(1, "John", "Developer");
// 将对象转换为JSON
String jsonString = objectMapper.writeValueAsString(employee);
System.out.println(jsonString);
}
}
2. 基本JSON到对象的转换
此用例演示了将JSON字符串
反序列化为Java对象
。
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonToObjectExample {
public static void main(String[] args) throws Exception {
String jsonString = "{\"id\":1,\"name\":\"John\",\"designation\":\"Developer\"}";
ObjectMapper objectMapper = new ObjectMapper();
// 将JSON字符串转换为Java对象
Employee employee = objectMapper.readValue(jsonString, Employee.class);
System.out.println(employee.getName()); // 输出: John
}
}
3. 使用注解自定义JSON字段名称
在某些情况下,Java对象
中的字段名称可能与JSON
中的字段名称不匹配。使用@JsonProperty
来处理此问题。
import <