利用Spring AOP自定义注解解决日志和签名校验
利用Spring AOP自定义注解解决日志和签名校验
一、需解决的问题部分API有签名参数(signature),
Passport首先对签名进行校验,校验通过才会执行实现方法。 第一种实现方式(Origin):在需要签名校验的接口里写校验的代码,例如:boolean isValid =
accountService.validSignature(appid, signature, client_signature); if (!isValid) return
ErrorUtil.buildError(ErrorUtil.ERR_CODE_COM_SING); 第二种实现方式(Spring Interception):利用spring的拦截器功能,对指定的接口进行拦截,拦截器实现签名校验算法,例如:<mvc:interceptors> <mvc:interceptor>
<mvc:mapping path=\/>
<mvc:mapping path=\ <mvc:mapping path=\/>
<mvc:mapping path=\ <bean
class=\dSecureInteceptor\ </mvc:interceptor>
</mvc:interceptors> 第三种实现方式(spring AOP):自定义注解,对需要进行签名验证的方法添加注解,例如:@SecureValid @ResponseBody
@RequestMapping(value = \RequestMethod.POST)
public Object addShare(HttpServletRequest req, HttpServletResponse res,InfoAPIRequestParams requestParams) { ...
} 2. 日志记录功能,例如:某些接口需要记录请求和响应,执行时间,类名,方法名等日志信息。也可采用以上三种方式实现。 3. 代码性能监控问题,例如方法调用时间、次数、线程和堆栈信息等。这类问题在后一个专题提出解决方案,采用以上三种方式实现缺点太多。以下是三种实现方式比较:实现方式优点缺点Origin不采用反射机制,性能最佳逻辑复杂时,代码复用不好需要在每个接口里写入相同代码(我太懒,就想写几个字母)Spring Inter非常适合对所有方法进行拦截,例如调试时打印所有方法执行时间类似过滤
器的功能,如日志处理、编码转换、权限检查是AOP的子功能不采用反射机制,性能有所影响需要在xml文件里配置对哪些接口进行拦截,比较麻烦Spring AOP使用方便,增加一个注解非常灵活,可@Before,@After,@Around等不采用反射机制,性能有所影响(性能对比后面详细展示)
相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




