自定义注解实现spring 方法拦截用于日志,等处理

原创 2015年11月20日 11:29:54


老规矩:配置文件去掉了左右尖括号
配置文件:
      bean id="seInterceptor" class="com.web.util.SeInterceptor"  /bean
    aop:config 
             
                 aop:pointcut id="loginPoint" 
                 expression="execution(public * com.web.controller.*.*(..)) "/

                 aop:advisor pointcut-ref="loginPoint" advice-ref="seInterceptor"/
      /aop:config
    自定义注解:
package com.web.util;  
  
import java.lang.annotation.Documented;  
import java.lang.annotation.ElementType;  
import java.lang.annotation.Retention;  
import java.lang.annotation.RetentionPolicy;  
import java.lang.annotation.Target;  
@Target(ElementType.METHOD)  
@Retention(RetentionPolicy.RUNTIME)  
@Documented  
public abstract @interface RequiredInterceptor{  
    boolean required() default true;  
}  
controller:
package com.web.util;  
  
import org.aopalliance.intercept.MethodInterceptor;  
import org.aopalliance.intercept.MethodInvocation;  
import org.springframework.core.annotation.AnnotationUtils;  
  
public class SeInterceptor implements MethodInterceptor {  
    @Override  
    public Object invoke(MethodInvocation invocation) throws Throwable { 
     System.out.println("------invoke-----");
        RequiredInterceptor requiredInterceptor = AnnotationUtils.findAnnotation(invocation.getMethod(), RequiredInterceptor.class);  
        if(requiredInterceptor!=null){  
            System.out.println(invocation.getMethod().getName());  
        }  
      return invocation.proceed();  
    }  
  

}  

需要的jar包:spring基本jar包,另外:aspectjweaver-1.8.7.jar   aspectjrt-1.8.6.jar   commons-logging-1.1.1.jar

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Spring MVC AOP通过自定义注解方式拦截Controller等实现日志管理

之前一直写.net,没玩过spring,一直没用过aop(面向切面编程)这类功能,当然不是说.net里面没有这类框架,企业库就可以微软企业库官网开始上代码:注解定义package com.jianku...

Spring学习笔记五: AOP入门

一、AOP术语 切面(aspect):要实现的交叉功能,是系统模块化的一个切面或领域。如日志记录。 连接点:应用程序执行过程中插入切面的地点,可以是方法调用,异常抛出,或者要修改的字段。 通知:切面的...

springmvc里使用注解进行拦截器配置

springmvc本身不能像struts2那样使用注解拦截action,这在使用中非常不方便,我们来扩展下springmvc,增加一个类,就可以实现注解拦截器.

spring 拦截器 spring自定义注解

从别人处转载 找不到出处 最近项目里加上了用户权限,有些操作需要登录,有些操作不需要,之前做项目做权限,喜欢使用过滤器,但在此使用过滤器比较死板,如果用的话,就必须在配置文件里加上所有方法,而且 不好...

Spring Aop自定义注解拦截Controller实现日志管理

从业近二,三年了,第一次写博客,
  • itnik
  • itnik
  • 2014-08-13 21:02
  • 357

spring AOP自定义注解方式实现日志管理 详解

 今天继续实现AOP,到这里我个人认为是最灵活,可扩展的方式了,就拿日志管理来说,用Spring AOP 自定义注解形式实现日志管理。废话不多说,直接开始!!! 关于配置我还是的再...

Spring AOP实现复杂的日志记录(自定义注解)

前段时间做项目中,业务逻辑要求只要对数据库数据进行改动的都需要记录日志(增删改),记录的内容有操作者,操作的表名及表名称,具体的操作,以及对那条数据进行操作。当时想到的就是Spring 的AOP功能。

Spring 自定义注解实现操作日志记录功能

需求是这样的:项目很大,有好几个子系统,而且这些子系统已经都在开发过程中了,都进行了大半了。现在要实现的操作日志管理是要将用户在登录系统后所做的重要操作记录下来并查询。记录的内容包括操作人的相关信息(...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)