Java代码中的声纳空指针异常

时间:2019-07-03 15:46:31

标签: java

我下面有一段代码,其中声纳棉绒显示了异常可能引发“ NullPointerException”; “ mainDTO”在此处为空。

请告知我该如何更正

public mainDTO create(mainDTO mainDTO) throws NotFoundException {
        if (mainDTO != null) {
            Main main = mainMapper.tomain(mainDTO);
            mainRepository.save(main);
            return mainMapper.tomainDTO(main);
        }
        throw new ResourceNotFoundException("Can not create the main " + mainDTO.getMainId()); // ** Sonar Qube exception
    }

1 个答案:

答案 0 :(得分:0)

通过编写以下行:

if (mainDTO != null) {

您要标记mainDTO可能为空。但是您尚未对

进行空检查
mainDTO.getMainId()

声纳抱怨的地方。如果mainDTO确实为null,则将在此行引发null指针异常。