为什么春天出现异常并且大多数是未经检查的异常?

Jyo*_*rup 5 java spring hibernate exception

可能重复:
为什么hibernate将HibernateException更改为RuntimeException(未选中)

将spring中的异常和hibernate保持为未经检查的异常的原因是什么?

只是为了减少编码时的混乱或者背后还有其他一些设计原理吗?

xyz*_*xyz 5

在处理大多数数据库异常时,开发人员几乎无法做任何事情(我的意思是在catch块中写一些内容以从异常中恢复).与数据库连接问题一样,表等​​问题中不存在不正确的查询或列.
因此,未经检查的异常可帮助开发人员添加不必要的catch块.如果你仍然想要,你可以捕获所需的未经检查的异常,并留下其余的,这与已检查的异常不同.

  • @Jyotirup:不知道jdbc,但它像Hibernate和Spring一样从jdbc的错误中学到了东西. (2认同)

dvb*_*kel 4

关于受控异常与非受控异常的争论由来已久。两个阵营都有强有力的支持者。作为一个团队,你应该选择一种风格并坚持下去。

虽然我只能猜测其基本原理,但显然 Spring 和 Hibernate 更青睐未经检查的异常阵营。

争论(除其他外)在问题“在 Java 中,我什么时候应该创建检查异常,什么时候应该是运行时异常? ”中进行了讨论。