spring的AOP在controller,service,dao层能全部做切面吗

如题所述

没有看到你的代码不知道你其他地方有没有错误但就你描述中能发现一点你的Dao继承自BaseDao没有实现接口首先spring的aop的底层是通过动态代理实现的,默认的是使用jdk的动态代理而jdk的动态代理的类必须实现接口。举个例子publicclassStudentDaoImplimplementsStudentDao{}才可以用spring默认的aop进行拦截。问题找到了解决方案也就出来了。第一种:不要通过继承来实现Dao,通过接口。第二种:spring提供了Cglib来实现aop的底层实现,cglib通过继承来实现动态代理。使用方法如下,首先,引入cglib库cglib-nodep-2.1_3.jar。这个不同版本的貌似不一样,找到你那个版本的spring的源代码,引入lib/cglig里面的所有jar。其次,配置springaop的时候将proxy-target-class的值设置成ture.配置如下如果还有问题可以给我留言也可以加我qq把代码发过来。
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网