正确配置 在controller中使用AOP
来源:互联网 发布:数组排序c语言 编辑:程序博客网 时间:2024/04/29 10:41
在controller中使用AOP的问题主要有2个
1,在于如何让controller能够被检测到,controller和其他spring bean的区别在于:controller是由mvc定义并在web.xml中的dispatcher中定义的。
2,更改默认的代理配置使用cglib
解决方法:
1、正确定义controller,(比较通用的做法,没有特殊情况的话,大部分应用没有这个问题)
a. 将服务层的类都放在ApplicationCotext-*.xml中定义,在context listener中初始化(注意,任何controller都不应该在这里出现),要包括<aop:aspectj-autoproxy/>, 在这里,有没有proxy-target-class="true" 没有关系(具体含义参看下文)
b. 定义mvc的配置文件,一般是 <<servlet name>>-servlet.xml,一般(也是推荐做法)使用auto scan来定义所有的controller.关键步骤来了:这个文件也要加入<aop:aspectj-autoproxy proxy-target-class="true"/>, 一定要添加proxy-target-class="true"! 这是用于通知spring使用cglib而不是jdk的来生成代理方法。
c. 另外一个事项,controller需要使用@controller注释,而不是继承abstract controller。
d.controller的aop配置在<<servlet name>>-servlet.xml中,而不是配置在服务类的文件中,以保证能够被检测到,如果是使用注解配置controller的aop,那么在<<servlet name>>-servlet.xml文件中需要配置扫描注解aop的包<context:component-scan base-package="xxxx.xxx" />
- 正确配置 在controller中使用AOP
- 正确配置spring aop,在controller中使用AOP
- 在springMVC中使用AOP拦截controller
- Spring的注解Controller中使用AOP
- spring的controller中使用aop
- 在XML中配置AOP
- springmvc 在controller层使用aop切面编程
- 如何正确使用AOP
- [CakePHP] 在Controller中使用Helper
- 笔记:在使用spring aop添加日志时对在controller层无效
- Spring mvc 对Controller配置AOP
- Spring Aop拦截controller配置注意事项
- springMVC中实现定时器可在Controller中配置定时器
- 如何在java中正确使用volatile
- 在iBATIS中正确的使用$和#
- 在web网页中正确使用图片格式
- 在Python中正确使用Unicode
- 在Java中正确使用注释
- TCP/IP 协议栈及 OSI 参考模型详解
- ubutun命令
- 10.4
- MyEclipse之各个版本的区别
- android广播接受者broadcastReceiver
- 正确配置 在controller中使用AOP
- HTTP协议--超文本传输协议
- hdu 5496 Beauty of Sequence bc#58 组合 离散化
- windows xp 休眠按钮
- CDN对流媒体和应用分发的支持及优化 | 高可用CDN架构详解
- 多摄像头同时工作搜集
- 1036. 跟奥巴马一起编程(15)
- 读《第三次浪潮》有感
- 例题5.9 飞机调度 LA3211