课程中MyBatis工具类是否需要对静态代码块中的捕获异常进行下修改?该如何修改呢?

课程中MyBatis工具类是否需要对静态代码块中的捕获异常进行下修改?该如何修改呢?

https://img1.sycdn.imooc.com//climg/61e7be730953bcdd10870435.jpg

这个代码里的静态代码块中有捕获异常的操作,但是这里的设计似乎不太合理。我在运行相关程序的时候由于在初始化时报错,导致了整个程序在后来一直无法运行,尝试了很多方法多无法解决。后来找到百度的一篇文章,介绍到由于类在初始化时失败,但是初始化只会进行一次,无法重试,因此一旦出现异常,这个类在以后就永远不能用了。https://img1.sycdn.imooc.com//climg/61e7bf500932141411780486.jpg

相关文章链接:https://blog.csdn.net/mhxy199288/article/details/79422246

那么如果想对这个工具类进行修改,该怎样修改,才能避免日后在运行时万一发生异常,而导致这个类永远失效的这个问题呢?如果以后这个类无法正常加载,就意味着整个程序彻底奔溃,我也不知道该怎么修改才能让程序重新正常运行

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小小 2022-01-19 17:10:42

同学你好,上述代码实现是可以的没有问题的,若上述代码运行时出现了异常则可能是配置文件中出现了错误,建议检查下mybatis-config.xml文件及其中引入的mapper下的xml文件内容是否正确。

https://img1.sycdn.imooc.com//climg/61e7d2f709bb91aa09050266.jpg

若未检查出错误,则可将报错截图及代码以复制粘贴的形式上传至问答区。老师测试后再给予解答。

祝学习愉快~

  • 提问者 蒋昌魁 #1

    我知道代码没错,但是代码如此设计后似乎有不小的隐患。因为倘若程序运行时初始化由于内存不足,或者其他什么原因产生了异常。之后想再运行这个程序,这个工具类就无法正常运行使用了

    2022-01-19 19:07:35
  • 好帮手慕小小 回复 提问者 蒋昌魁 #2

    同学你好,同学考虑的情况一般是不会出现的,静态代码块只会在程序启动时加载一次,也就是说在程序启动时将配置文件加载进内存。程序运行是需要依赖配置文件,配置文件是必须要保证正确无误程序才可以运行起来。若配置文件出现错误,则程序无法正常启动运行。

    例如:若配置文件中数据库密码书写错误,程序启动时则会报错出现相关异常提示信息。

    祝学习愉快~

    2022-01-20 09:30:32
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师