下面是我的代码,orgId 是可选的,只传两个参数和三个参数调用不同的方法。
@GetMapping
Response getFarmList(int pageNumber, int pageSize, long orgId) {
if (orgId > 0) {
return farmService.getFarmListByOrgId(orgId, pageNumber, pageSize);
}
return farmService.getFarmList(pageNumber, pageSize);
}
运行时报错,报错提示如下:
java.lang.IllegalStateException: Optional long parameter 'orgId' is present but cannot be translated into a null value due to being declared as a primitive type. Consider declaring it as object wrapper for the corresponding primitive type.
根据这个错误提示修改代码后问题解决:
@GetMapping
Response getFarmList(int pageNumber, int pageSize, Long orgId) {
if (orgId != null) {
return farmService.getFarmListByOrgId(orgId, pageNumber, pageSize);
}
return farmService.getFarmList(pageNumber, pageSize);
}