笔记:在使用spring aop添加日志时对在controller层无效
2016-12-22 19:17
507 查看
原因:
是父子容器的问题
切面代码和连接点,通知都没有问题,问题出在了我的配置信息上面。
我将配置信息如下:
将其配置在了spring-context.xml 核心配置文件中,该配置文件会被ContextLoaderListenerclass加在,Spring会创建一个WebApplicationContext上下文,称为父上下文(父容器) ,保存在 ServletContext中,keyWebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE的值。
而spring-mvc.xml是DispatcherServlet,可以同时配置多个,每个 DispatcherServlet有一个自己的上下文对象(WebApplicationContext),称为子上下文(子容器),子上下文可以访问父上下文中的内容,但父上下文不能访问子上下文中的内容。 它也保存在 ServletContext中,key是"org.springframework.web.servlet.FrameworkServlet.CONTEXT"+Servlet名称
当spring加在父容器的时候就会去找切入点,但是这个时候切入的controller是在子容器中的,父容器是无法访问子容器,所以就拦截不到。可以将上述的配置文件放到spring-mvc.xml中。
是父子容器的问题
切面代码和连接点,通知都没有问题,问题出在了我的配置信息上面。
我将配置信息如下:
<aop:aspectj-autoproxy proxy-target-class="true"/> <bean id="caFaceAuthAspect" class="com..aspect.CxxxAuthAspect"/>
将其配置在了spring-context.xml 核心配置文件中,该配置文件会被ContextLoaderListenerclass加在,Spring会创建一个WebApplicationContext上下文,称为父上下文(父容器) ,保存在 ServletContext中,keyWebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE的值。
而spring-mvc.xml是DispatcherServlet,可以同时配置多个,每个 DispatcherServlet有一个自己的上下文对象(WebApplicationContext),称为子上下文(子容器),子上下文可以访问父上下文中的内容,但父上下文不能访问子上下文中的内容。 它也保存在 ServletContext中,key是"org.springframework.web.servlet.FrameworkServlet.CONTEXT"+Servlet名称
当spring加在父容器的时候就会去找切入点,但是这个时候切入的controller是在子容器中的,父容器是无法访问子容器,所以就拦截不到。可以将上述的配置文件放到spring-mvc.xml中。
相关文章推荐
- Spring如何使用aop切入controller层---问题笔记
- spring 基于aop 实现日志输出 定义在controller层无效
- 使用Spring AOP记录Controller层操作日志
- (十四)SpringBoot使用AOP统一处理Web请求日志添加MDC
- spring使用AOP和自定义注解功能添加日志管理--实用
- Spring Boot中使用AOP统一处理Web请求日志
- 从头认识Spring-3.8 简单的AOP日志实现(注解版)-扩展添加检查订单功能,以便记录并检測输入的參数
- spring boot 基础之使用AOP统一处理请求日志使用方法
- Spring使用aop将日志(包括异常信息)输入到日志文件
- Springboot项目使用aop切面保存详细日志到ELK日志平台
- (转)Spring Boot中使用AOP统一处理Web请求日志
- springboot【19】日志管理之使用AOP统一处理Web请求日志
- 在Spring中使用AOP实现日志功能
- 使用Spring Boot日志框架在已有的微服务代码中添加日志功能
- Spring 学习5--使用AOP统一处理日志
- Spring Boot中使用AOP统一处理Web请求日志
- 详解Spring Boot中使用AOP统一处理Web请求日志
- Spring Boot中使用AOP统一处理Web请求日志
- spring-boot使用AOP统一处理日志
- 笔记有关在spring使用aop在实现service层时出现的问题