我正在创建一个API
我的控制器是
public EmployeeResponse(@RequestBody EmployeeRequest reqPacket) { }
我的pojo课是
EmployeeRequest {
int age;
String name;
}
所以基本上我的getAge()
和setAge()
方法应该只处理int类型
现在,如果我的请求包是
{
"name": "smith"
}
表示请求包中没有年龄参数
所以在我的控制器中,它应该默认设置为零(因为类型是int)
但我想知道如果我得到了年龄字段在请求包或没有。
什么是最好的解决方案?
我甚至不能使用@NotNull
注解。因为int类型的默认值是零。所以它不会工作..
我可以把getter类型设置为string,把setter类型设置为int吗?
2条答案
按热度按时间dsekswqp1#
您只需将字段age更改为Integer类型。如果没有参数传递,它将为null。
pcrecxhr2#
尝试创建默认构造函数