提问人:Natalie 提问时间:11/27/2022 最后编辑:Natalie 更新时间:11/27/2022 访问量:125
如何在没有“...可能是空“警告
How to use `org.springframework.core.convert.ConversionService#convert` without "... might be null" warning
问:
我有两个类:和.FriendRequest
FriendRequestDto
我已经定义了一个转换器,从 到 :FriendRequestDto
FriendRequest
@Component
public class FriendRequestDtoToFriendRequestConverter implements Converter<FriendRequestDto, FriendRequest> {
@Override
public FriendRequest convert(FriendRequestDto dto) {
...
}
}
当我尝试使用它时:
@RestController
@RequestMapping("/api/v1/friend-request")
public class FriendRequestController {
private final FriendRequestService friendRequestService;
private final ConversionService conversionService;
public FriendRequestController(
FriendRequestService friendRequestService,
@Qualifier("mvcConversionService")
ConversionService conversionService
) {
this.friendRequestService = friendRequestService;
this.conversionService = conversionService;
}
@PostMapping("/send")
public FriendRequestStatus send(@Valid @RequestBody FriendRequestDto friendRequestDto) {
return friendRequestService.saveFriendRequest(
conversionService.convert(friendRequestDto, FriendRequest.class)
);
}
}
我收到警告和修复它的方法:.这将删除警告。Argument 'conversionService.convert(friendRequestDto, FriendRequest.class)' might be null
Replace with Objects.requireNonNull(conversionService.convert(friendRequestDto, FriendRequest.class))
我发现需要 null 检查,因为该方法标有注释。
但是,在我看来,每次我想转换某些东西时都写并不是一个好主意。convert
@Nullable
Objects.requireNonNull
有没有办法在不使用检查的情况下摆脱警告?Objects.requireNonNull
答: 暂无答案
评论