zoukankan      html  css  js  c++  java
  • <aop:aspectj-autoproxy proxy-target-class="false"/>导致出现404状态码

    今天干活的时候,由于是一个web应用,想在每次发送请求和返回响应的时候记录日志,也就是代理Controller,想起了之前的spring AOP,于是按照之前的配置配置好了,可是发现每次前端发送请求都会返回404状态码,这我就蒙了,如图:

    而后检查后台程序,什么问题都没有,但是前端就是请求失败,郁闷死我了,后来还是在Google中找到了解决答案,但是也不知其所以然,后来又看了Spring给的官方的文档,但是和网上给的解决方案有差距,果断两者试了一下。

    废话不说,直入正题。

    Spring 是这样处理AOP代理的问题的,它有两套动态代理的实现,一个是JDK方法的实现,一个就是cglib,proxy-target-class就是决定使用哪个实现方式的开关,当该值是false时,使用JDK的实现方式,这也是默认的实现方式,反之则使用cglib的实现方式。当我把该值设置为true时,也就是使用cglib,问题解决,顺利跑通。


     
    1. <aop:aspectj-autoproxy proxy-target-class="true"/>  

    /***************************后记*******************************/

    还有一个问题,由于默认是使用JDK实现动态代理,并且我的被代理类也实现了一个接口ApplicationListener,按理说用JDK的方式是来实现代理是没有问题的,但是从实际结果来看,必须得使用cglib才行,这个问题我一直搞不明白,先记下,留底。

    转自:http://blog.csdn.net/lmy86263/article/details/50789842

  • 相关阅读:
    GPS定位的实现
    app启动监听网络类型
    tableview 刷新某一行跟某一组
    给app 添加手势验证
    类似支付宝启动页面的实现
    xcode 插件安装路径
    Windows上Dart安装
    Skynet通讯遇到的奇怪问题
    与流氓的斗争
    Skynet:Debug Console的扩展
  • 原文地址:https://www.cnblogs.com/flywang/p/7762123.html
Copyright © 2011-2022 走看看