纠正方法的返回类型

时间:2019-06-27 16:30:45

标签: java

我有下面的代码,如下所示,我要更正返回类型

  public boolean deleteById(Integer id) throws ResourceNotFoundException {

        abcRepository.deleteById(id);
        return true;
    }

我想要将其更正为

if (abcRepository.deleteById(id))
       {
        return true;
       } else 
        return false;

现在,此存储库正在调用Jpa存储库方法,该方法在我检查过的反编译器中的返回类型如下所示

void deleteById(ID var1);

现在,请告知我如何聪明地更改退货类型

1 个答案:

答案 0 :(得分:4)

似乎您希望您的方法在删除对象时返回true,而在找不到对象时返回false。

您要调用的方法是void,因为该方法使用异常ResourceNotFoundException来指示未找到对象,因此您需要捕获该异常并返回false,而不是使异常冒出来:

public boolean deleteById(Integer id) { // <-- removed throws
    try {
        abcRepository.deleteById(id);
        return true;
    } catch (ResourceNotFoundException ignored) {
        return false;
    }
}