在 Spring 数据中,我是否应该偏执地处理所有可能的异常?
In Spring Data, should I be paranoid about handling all possible exceptions?
假设我有这行代码
@Override
public Optional<Category> getCategoryById(int id) {
return repository.findById(id);
}
spring 数据的文档说明了“findById”函数:
抛出:
IllegalArgumentException – 如果 id 为空。
在我的例子中,它永远不可能为空,所以如果发生错误,我是否仍应添加 try catch 块来处理?
另外,是否应该 try/catch 它并进行相应处理? 或者我应该让它被扔掉然后让
@ControllerAdvice/Exception 处理程序处理它并 return 将错误返回给用户?
一般来说,如果您能保证永远不会向此方法传递一个 non-existing ID,您可以考虑 @SneakyThrows
来自 Lombok 项目。
假设这是一个更大的项目,请确保记录了您对 @SneakyThrows 的使用。
假设我有这行代码
@Override
public Optional<Category> getCategoryById(int id) {
return repository.findById(id);
}
spring 数据的文档说明了“findById”函数:
抛出: IllegalArgumentException – 如果 id 为空。
在我的例子中,它永远不可能为空,所以如果发生错误,我是否仍应添加 try catch 块来处理? 另外,是否应该 try/catch 它并进行相应处理? 或者我应该让它被扔掉然后让
@ControllerAdvice/Exception 处理程序处理它并 return 将错误返回给用户?
一般来说,如果您能保证永远不会向此方法传递一个 non-existing ID,您可以考虑 @SneakyThrows
来自 Lombok 项目。
假设这是一个更大的项目,请确保记录了您对 @SneakyThrows 的使用。