spring boot如何给 对象为null的字段设置默认值, 例如User表 age为null , 入参或创建对象时默认0
时间: 2023-12-10 16:40:27 浏览: 176
可以使用@Value和三目运算符来实现。示例如下:
```java
public class User {
private String name;
private Integer age;
// 构造函数
public User(String name, Integer age) {
this.name = name;
this.age = age == null ? 0 : age;
}
// getter 和 setter 方法省略
}
```
在使用@Value注解时,我们需要在对应的配置文件中设置默认值。例如:
```java
@Component
@ConfigurationProperties(prefix = "user")
public class UserConfig {
@Value("${age:0}")
private Integer age;
// getter 和 setter 方法省略
}
```
然后在创建User对象时,可以通过调用UserConfig中的getAge()方法来获取默认值,示例如下:
```java
@Autowired
private UserConfig userConfig;
public User createUser(String name, Integer age) {
return new User(name, age == null ? userConfig.getAge() : age);
}
```
这样,当age为null时,就会使用默认值0。
阅读全文