基本上每个存储库方法都可能抛出DataAccessException。许多异常都从DataAccessException继承。因此,也许我会捕获DuplicateKeyException或DataIntegrityViolationException。但其他所有人都说40-50个例外,我将不会明确捕获。相反,我只会捕获DataAccessException。那么为什么总是捕获DataAccessException?相反,我宁愿只捕获一次。但是春季如何做。没有前端控制器。只有控制器。因此,我应该如何将其放在中央位置。我知道谁是春天的唯一开始。但我认为这不起作用。
@SpringBootApplication
@EnableJpaRepositories
public class Application {
public static void main(String[] args) {
try{
SpringApplication.run(Application.class, args);
}
catch(DataAccessException e)
{
//Do your error handling here
}
}
}
您应该在具有管理数据库访问的代码的Bean或控制器处捕获异常,您可以捕获并管理每个控制器,更好的方法是实现异常处理程序,如guid显示在此处https://www.baeldung.com/exception-handling-for-rest-with-spring