通过aop环绕通知统一包装接口思路雏形

设计思路----让业务层专注业务开发,报文封装由aop自动完成。

雏形:

在controller增加切面代码,抓取入参JSON报文和出参对象,使用自定义bean规范报文格式进行返回。

private static final Logger logger = LoggerFactory.getLogger(WebRequestAroundAdvice.class);

@Pointcut("execution(* com.yc.rm.ccms.bus.controller.*.*(..))")

private void anyMethod(){}//定义一个切入点

@Around("anyMethod()")

public Object doBasicProfiling(ProceedingJoinPointpjp) throwsThrowable{

    logger.debug("进入环绕通知");

    Object[] objs = pjp.getArgs();

    Object object = pjp.proceed();//执行该方法

    logger.debug(object.toString());

    logger.debug("退出方法");

    RequestAttributes ra = RequestContextHolder.getRequestAttributes();

    ServletRequestAttributes sra=(ServletRequestAttributes)ra;

    HttpServletRequest request = sra.getRequest();

    logger.debug("request "+request+" sessionid:"+request.getRequestedSessionId());

    MsgBean bean = new MsgBean();

    bean.setParameter(objs[0]);

    bean.setResult(object);

    bean.setMethod("");

    bean.setSuccess(1);

    bean.setTime(now());

    returnbean;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容