全局配置 ObjectMapper
java Bean
@Data
@Component
@NoArgsConstructor
@AllArgsConstructor
@ConfigurationProperties(prefix = "person")
public class Person {private String userName;private Boolean boss;private Date birth;private Integer age;private Pet pet;private String[] interests;private List<String> animal;private Map<String, Object> score;private Set<Double> salarys;private Map<String, List<Pet>> allPets;
}
application.yaml
person: # 表示一个人的信息userName: wdw # 用户名boss: false # 是否是老板birth: 2019/12/12 20:12:33 # 出生日期age: 18 # 年龄pet: # 宠物信息name: tomcat # 宠物名字weight: 23.4 # 宠物体重interests: [篮球, 游泳] # 兴趣爱好animal: # 动物列表- jerry- mariosalarys: [3999, 4999.98, 5999.99] # 工资列表
表单提交
<form action="/saveUser" method="post">姓名: <input name="userName" value="zhangsan"/> <br/>年龄: <input name="age" value="18"/> <br/>生日: <input name="birth" value="2019/12/10"/> <br/>宠物: <input name="pet" value="小白,23"/><input type="submit" value="保存"/></form>
页面视图
在Spring Boot中全局配置 ObjectMapper
,使其在序列化时忽略 null
值。
1import com.fasterxml.jackson.databind.ObjectMapper;
2import org.springframework.context.annotation.Bean;
3import org.springframework.context.annotation.Configuration;
4
5@Configuration
6public class JacksonConfig {
7
8 @Bean
9 public ObjectMapper objectMapper() {
10 ObjectMapper objectMapper = new ObjectMapper();
11 objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
12 return objectMapper;
13 }
14}
通过这种方式,所有的对象在序列化为JSON时都会忽略 null
值。
[外链图片转存中…(img-Ntiqt1xQ-1735741450802)]
通过这种方式,所有的对象在序列化为JSON时都会忽略 null
值。