这问题应该发到“框架、开源”区一般来说可以用aop拦截action的execute方法
在通知中是可以获得request的
以AfterReturningAdvice为例, public void afterReturning(Object returnValue, Method method, Object[] args, Object target) {
HttpServletRequest request = (HttpServletRequest)args[2];
HttpServletResponse response = (HttpServletResponse)args[3];
HttpSession session = request.getSession(); }args就是被拦截方法的参数,在execute方法中,request和response是第3和第4个参数
所以是args[2]、args[3]
在通知中是可以获得request的
以AfterReturningAdvice为例, public void afterReturning(Object returnValue, Method method, Object[] args, Object target) {
HttpServletRequest request = (HttpServletRequest)args[2];
HttpServletResponse response = (HttpServletResponse)args[3];
HttpSession session = request.getSession(); }args就是被拦截方法的参数,在execute方法中,request和response是第3和第4个参数
所以是args[2]、args[3]
现在是spring的aop不起作用,根本没有进入afterReturning方法,不知道是咋回事
假设 validate 是你的验证方法
在applicationContext.xml中配置
<bean name="validate "
class="指向你的validate类"/>
<bean name="validateAutoProxy"
class="">
<property name="beanNames">
<value>你要验证的path例如:/login</value>
</property>
<property name="interceptorNames">
<list>
<value>validate</value>
</list>
</property>
</bean>
http://howsun.blog.sohu.com/106725713.html