Aspect注解实现简单的切面

来源:互联网 发布:la mer 眼霜 知乎 编辑:程序博客网 时间:2024/06/02 16:38

1.使用Aspect,注意首先下载需要的jar包,导入工程。

2.需要一个类作为切面类。

3.切面类代码:

@Aspect
public class Aop {


@Pointcut("execution(* *.eat(..))")   (两个星号代表匹配所有eat方法,@Pointcut("execution(* bean.North.eat(..))")则对应的一个方法)
    public void eat(){};
    
//前置方法
    @Before("eat()") 
public void before(){
System.out.println("方法之前...");
}

//后置方法
    @After("eat()") 
public void behind(){
System.out.println("方法之后...");
}
}


4.xml 中添加: <aop:aspectj-autoproxy/>  <!-- 要添加本行 --> 

5.错误提示:

ApplicationContext ac = new FileSystemXmlApplicationContext("src/applicationContext.xml");//利用文件系统查询applicationContext.xml配置文件

 Person p = (North) ac.getBean("north");
 p.eat();

**********   com.sun.proxy.$Proxy8 cannot be cast to bean.North (控制台错误提示)!

改为:

 ApplicationContext ac = new FileSystemXmlApplicationContext("src/applicationContext.xml");//利用文件系统查询applicationContext.xml配置文件

 Person p = (Person) ac.getBean("north");
 p.eat();

0 0
原创粉丝点击