SpringMVC 统一异常处理入口

在一个冰冷幽暗的夜晚上,我正思考的十分重要的人生问题,这周末该去那里happy好呢?是宅在家里好呢,或者宅在家里好呢,还是宅在家里好呢?这时,万年隐身的QQ竟然浮起浅色聊天框,我去!不得了,居然是女神主动联系我,女神一定是因为我俊朗的五官,171的模特身材而深深地迷恋上我了,呵呵呵呵呵呵。

原文地址: http://www.hpboys.com/524.html

“诶,阳X,你在干嘛呢?”“没啊,在思考人生。”

难道这是要约我的节奏吗?在妹子前必须保持冷静。

“那个投资页面老是出现等待中的问题,有处理好吗?”

。。。。。。。。。没事!虽然跟我预想有点出入,但女神这是在考验我!

回头一想,本屌在搬砖时处处留下logger.error()的日志记录,于是轻车熟路的连接上了Aliyun。

飞快的敲着键盘,把今天的日志都下载下来了。

。。。

没有这个模块的异常日志,这是逗我吗!

于是想起,这是肖XX写的移动模块,这个异常记录完全没有,我又不能随意更改,这该如何是好.

在百度基友的帮助下,为系统添上了“全局异常处理”(AOP),又是把女神的一招好牌,嘎嘎。

  1. /**
  2. * 全局异常控制,记录日志
  3. * @param ex
  4. * @param request
  5. * @return
  6. */
  7. @ExceptionHandler(RuntimeException.class)
  8. public String operateExp(RuntimeException ex,HttpServletRequest request){
  9. CommonUtils.printHTTP(request);
  10. logger.error(ex.getMessage(),ex);
  11. logger.info("************* ------ 异常信息已记录("+DateUtils.getTimeNow()+") ------- ***********");
  12. request.setAttribute("errorTips", ex.getMessage());
  13. return "wap/error";
  14. }

完成好这个之后,感觉女神快到自己的怀抱了。

解读:

@ExceptionHandler(RuntimeException.class)

当这个Controller中任何一个方法发生异常,一定会被这个方法拦截到。然后,输出日志。封装Map并返回,页面上得到status为false。就这么简单。

。。。

好了,搞定,下次在系统上再出现异常,我就“大有可为”了,嘎嘎...

时间: 2024-08-03 19:46:10

SpringMVC 统一异常处理入口的相关文章

SpringMVC统一异常处理简单配置

第一步:自定义异常处理类实现HandlerExceptionResolver接口 import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerExceptionResolver; import org.springframework.web.servlet.ModelAndView

springmvc统一异常处理

public class CustomExceptionResolver implements HandlerExceptionResolver { //前端控制器DispatcherServlet在进行HandlerMapping.调用HandlerAdapter执行Handler过程中,如果遇到异常就会执行此方法 //handler最终要执行的Handler,它的真实身份是HandlerMethod //Exception ex就是接收到异常信息 @Override public Model

SpringMVC统一异常处理(Controller处理)

1.  在一个controller内的统一处理示例 import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.ExceptionHandler; @RestController public class Test

SpringMVC学习笔记七:SpringMVC统一异常处理

发现有位前辈写得比我从书上看到的还详细,我就不写了,前辈的博文地址如下:  http://blog.csdn.net/eson_15/article/details/51731567

【SpringMVC学习07】SpringMVC中的统一异常处理

我们知道,系统中异常包括:编译时异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发.测试通过手段减少运行时异常的发生.在开发中,不管是dao层.service层还是controller层,都有可能抛出异常,在springmvc中,能将所有类型的异常处理从各处理过程解耦出来,既保证了相关处理过程的功能较单一,也实现了异常信息的统一处理和维护.这篇博文主要总结一下SpringMVC中如何统一处理异常. 1. 异常处理思路 首先来看一下在spr

使用Spring MVC统一异常处理实战

1 描写叙述 在J2EE项目的开发中.无论是对底层的数据库操作过程.还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的.不可预知的异常须要处理.每一个过程都单独处理异常,系统的代码耦合度高,工作量大且不好统一.维护的工作量也非常大. 那么,能不能将全部类型的异常处理从各处理过程解耦出来,这样既保证了相关处理过程的功能较单一,也实现了异常信息的统一处理和维护?答案是肯定的. 以下将介绍使用Spring MVC统一处理异常的解决和实现过程. 2 分析 Spring MVC处理异

SpringMVC 全局异常处理

在 JavaEE 项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的.不可预知的异常需要处理.每个过程都单独处理异常,系统的代码耦合度高,工作量大且不好统一,维护的工作量也很大.SpringMvc 对于异常处理这块提供了支持,通过 SpringMvc 提供的全局异常处理机制,能够将所有类型的异常处从各处理过程解耦出来,这样既保证了相关处理过程的功能较单一,也实现了异常信息的统一处理和维护. 全局异常实现方式 Spring MVC

springboot + shiro 权限注解、请求乱码解决、统一异常处理

springboot + shiro 权限注解.请求乱码解决.统一异常处理 前篇 后台权限管理系统 相关: spring boot + mybatis + layui + shiro后台权限管理系统 springboot + shiro之登录人数限制.登录判断重定向.session时间设置 springboot + shiro 动态更新用户信息 基于前篇,新增功能: 新增shiro权限注解: 请求乱码问题解决: 统一异常处理. 源码已集成到项目中: github源码: https://githu

spring 或 springboot统一异常处理

spring 或 springboot统一异常处理https://blog.csdn.net/xzmeasy/article/details/76150370 一,本文介绍spring MVC的自定义异常处理,即在Controller中抛出自定义的异常时,客户端收到更友好的JSON格式的提示.而不是常见的报错页面. 二,场景描述:实现公用API,验证API key的逻辑,放在拦截器中判断(等同于在Controller中)并抛出异常,用户收到类似下图的提示: 其中,Http状态Code也能自由控制