将春季和休眠中的异常保持为未经检查的异常的原因是什么?
只是为了减少编码时的混乱,还是背后有其他一些设计原则?
将春季和休眠中的异常保持为未经检查的异常的原因是什么?
只是为了减少编码时的混乱,还是背后有其他一些设计原则?
在处理大多数数据库异常时,开发人员几乎无能为力(我的意思是在 catch 块中写一些东西来从异常中恢复)。像数据库连接问题,表中不存在不正确的查询或列等问题。
因此,未经检查的异常可以使开发人员免于添加不必要的 catch 块。如果您仍然想要,您可以捕获所需的未检查异常并留下其余部分,而检查异常则不是这种情况。
已检查与未检查的异常辩论是一个古老的争论。两个阵营都有强大的支持者。作为一个团队,你应该选择一种风格并坚持下去。
虽然我只能猜测其中的原因,但显然 spring 和 hibernate 偏爱 unchecked exception 阵营。
辩论(除其他外)在“在 Java 中,我什么时候应该创建检查异常,什么时候应该是运行时异常? ”这个问题中讨论。
我认为像 Spring、Hibernate 这样的框架围绕 java 反射工作。而反射大部分异常都是运行时异常。