ssm框架异常处理 (只是一个webservice没有页面的后台)

pujitan978 2019-03-01 12:24:38
框架是SSM框架,例外异常的时候,想把异常log输出到Log中,然后程序能继续处理,不退出。
我的实现是用 HandlerExceptionResolver 的resolveException函数统一处理异常,把例外异常输出到log里.然后return null.
但是,如果数据库查询发生异常,后面处理就不能继续了。

例如,一个循环里,要操作数据库(查询,如果查询异常,想得到NULL对象或者空List,根据null或者是空,本次循环不处理,
其他循环继续),不想某次操作失败,后面的循环就不执行了,该怎么实现呢。

public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) {
logger.error("Exception " + e.getMessage(),e);
return null;
}
...全文
105 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhiluan7665 2019-03-19
  • 打赏
  • 举报
回复
在service 层加try catch捕获异常,异常时如果是list返回一个list.size()是0,如果不是返回NULL。在controler层判断返回值 NULL list.size()==0 决定是否退出处理,和继续处理
大隐藏于寺 2019-03-01
  • 打赏
  • 举报
回复
可以把你认为不影响后续操作的代码使用try ... catch ... 包裹起来,不向外抛出异常,你自己处理这些异常,比如在catch中使用continue;继续后续的循环处理.

50,547

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧