我的日常

登录/注册
您现在的位置:论坛 盖世程序员(我猜到了开头 却没有猜到结局) 盖世程序员 > spring中AOP来拦截Action配置
总共48087条微博

动态微博

查看: 1149|回复: 0

spring中AOP来拦截Action配置

[复制链接]
admin    

1244

主题

544

听众

1万

金钱

管理员

  • TA的每日心情

    2021-2-2 11:21
  • 签到天数: 36 天

    [LV.5]常住居民I

    管理员

    跳转到指定楼层
    楼主
    发表于 2015-06-03 13:34:15 |只看该作者 |倒序浏览
    做项目的时候,由于要用到在struts2的Action类中利用spring的AOP来实现记录操作日志,
    0 S' |( s* N  `  t8 O8 D
    ; M* z# R! J  H- [* ~  q& G在Action里面的方法中加上自定义annotation来实现记录操作功能,
    % `! c3 K3 P# c: p) m, m
    & M- r& i$ L  Z6 g/ L运行的时候页面提示NoSuchMethodException when Aspec,
    : I. [  Z  S5 F9 g2 p" `
    / }5 u0 u1 x1 r/ d  X( Y7 Q5 F' b网上说是Action继承了ActionSupport导致的,: I* ~( S+ q, \5 P/ L, O' Y
    " @* `- v& C: ]$ u% M" ~" n) h8 k
    后来在一个英文网站上找到了解决的方法,
    * u. ^% |' D3 A2 N& ]! @/ J( C1 I6 w" {
    只要在Spring的配置文件applicationContext中的<aop:aspectj-autoproxy/>改为<aop:aspectj-autoproxy proxy-target-class="true"/>就可以了。
    1 p5 f' r* S* ~( p- L6 p' D2 b5 f5 f8 ], [

    5 |$ T+ |) ?, R+ e
    / _# y$ a  e+ X4 U6 r, ]) U& C第一步:
    8 J) U( `/ @' F6 r0 O" _% W' }3 r2 q2 \. E
    在struts2的配置文件里加上以下一句:$ h* M( N1 p: U5 e' V

    5 d+ G% k! _; X4 X  T//让struts2始终先考虑spring的自动装箱: N; r2 y. O8 C2 G* i
    <constant name="struts.objectFactory.spring.autoWire.alwaysRespect" value="true" />
    * w! t/ V2 K" F! z: L
    ! R1 w" I8 @' @& n
    3 `9 p1 {9 I( z! f% P, c6 O6 O* m4 R/ }: W% i/ i! `6 D3 M. k9 d$ f: }
    第二步:
    8 j& M% O% I# S& v5 {2 L" j0 L; X1 `% I; E$ Q
    在配置AOP时,加上
    + k$ o6 M2 m" ]! L3 ^# d <!--通知spring使用cglib而不是jdk的来生成代理方法 AOP可以拦截到Controller(Action)-->
    5 p; t! ?8 n) t3 [3 W8 m<aop:aspectj-autoproxy proxy-target-class="true"/>//关键是这句话,配置上就行了,1 [+ d- ]2 y; p7 O* W0 F+ w& ?0 z
    ' I6 S6 U  I+ k9 }. G- m( o* d4 [

    科帮网 1、本主题所有言论和图片纯属会员个人意见,与本社区立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与科帮网享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和科帮网的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、科帮网管理员和版主有权不事先通知发贴者而删除本文


    JAVA爱好者①群:JAVA爱好者① JAVA爱好者②群:JAVA爱好者② JAVA爱好者③ : JAVA爱好者③

    快速回复
    您需要登录后才可以回帖 登录 | 立即注册

       

    关闭

    站长推荐上一条 /1 下一条

    发布主题 快速回复 返回列表 联系我们 官方QQ群 科帮网手机客户端
    快速回复 返回顶部 返回列表