全局配置 ObjectMapper
java Bean
java
@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
yaml
person: # 表示一个人的信息
userName: wdw # 用户名
boss: false # 是否是老板
birth: 2019/12/12 20:12:33 # 出生日期
age: 18 # 年龄
pet: # 宠物信息
name: tomcat # 宠物名字
weight: 23.4 # 宠物体重
interests: [篮球, 游泳] # 兴趣爱好
animal: # 动物列表
- jerry
- mario
salarys: [3999, 4999.98, 5999.99] # 工资列表
表单提交
html
<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
值。
java
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
值。