如何在没有“...可能是空“警告

How to use `org.springframework.core.convert.ConversionService#convert` without "... might be null" warning

提问人:Natalie 提问时间:11/27/2022 最后编辑:Natalie 更新时间:11/27/2022 访问量:125

问:

我有两个类:和.FriendRequestFriendRequestDto

我已经定义了一个转换器,从 到 :FriendRequestDtoFriendRequest

@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 nullReplace with Objects.requireNonNull(conversionService.convert(friendRequestDto, FriendRequest.class))

我发现需要 null 检查,因为该方法标有注释。 但是,在我看来,每次我想转换某些东西时都写并不是一个好主意。convert@NullableObjects.requireNonNull

有没有办法在不使用检查的情况下摆脱警告?Objects.requireNonNull

java spring intellij-idea 警告 转换器

评论


答: 暂无答案