ContrallerAOP规范如何应用于项目开发?
- 内容介绍
- 文章标签
- 相关推荐
本文共计330个文字,预计阅读时间需要2分钟。
plaintextgistfile1.txtAOP代码,主要功能是打印日志和捕获异常。异常要区分已知异常和未知异常,其中未知的异常是我们重点关注的,可以做一些邮件通知。已知的异常可以再细分一下,可以不做邮件通知。
AOP代码,主要就是打印日志和捕获异常,异常要区分已知异常和未知异常,其中未知的异常是我们重点关注的,可以做一些邮件通知啥的,已知异常可以再细分一下,可以不同的异常返回不同的返回码: public class ControllerAOP { private static final Logger logger = LoggerFactory.getLogger(ControllerAOP.class); public Object handlerControllerMethod(ProceedingJoinPoint pjp) { long startTime = System.currentTimeMillis(); ResultBean result; try { result = (ResultBean ) pjp.proceed(); logger.info(pjp.getSignature() + "use time:" + (System.currentTimeMillis() - startTime)); } catch (Throwable e) { result = handlerException(pjp, e); } return result; } private ResultBean handlerException(ProceedingJoinPoint pjp, Throwable e) { ResultBean result = new ResultBean(); // 已知异常 if (e instanceof CheckException) { result.setMsg(e.getLocalizedMessage()); result.setCode(ResultBean.FAIL); } else { logger.error(pjp.getSignature() + " error ", e); result.setMsg(e.toString()); result.setCode(ResultBean.FAIL); // 未知异常是应该重点关注的,这里可以做其他操作,如通知邮件,单独写到某个文件等等。 } return result; } }
本文共计330个文字,预计阅读时间需要2分钟。
plaintextgistfile1.txtAOP代码,主要功能是打印日志和捕获异常。异常要区分已知异常和未知异常,其中未知的异常是我们重点关注的,可以做一些邮件通知。已知的异常可以再细分一下,可以不做邮件通知。
AOP代码,主要就是打印日志和捕获异常,异常要区分已知异常和未知异常,其中未知的异常是我们重点关注的,可以做一些邮件通知啥的,已知异常可以再细分一下,可以不同的异常返回不同的返回码: public class ControllerAOP { private static final Logger logger = LoggerFactory.getLogger(ControllerAOP.class); public Object handlerControllerMethod(ProceedingJoinPoint pjp) { long startTime = System.currentTimeMillis(); ResultBean result; try { result = (ResultBean ) pjp.proceed(); logger.info(pjp.getSignature() + "use time:" + (System.currentTimeMillis() - startTime)); } catch (Throwable e) { result = handlerException(pjp, e); } return result; } private ResultBean handlerException(ProceedingJoinPoint pjp, Throwable e) { ResultBean result = new ResultBean(); // 已知异常 if (e instanceof CheckException) { result.setMsg(e.getLocalizedMessage()); result.setCode(ResultBean.FAIL); } else { logger.error(pjp.getSignature() + " error ", e); result.setMsg(e.toString()); result.setCode(ResultBean.FAIL); // 未知异常是应该重点关注的,这里可以做其他操作,如通知邮件,单独写到某个文件等等。 } return result; } }

