您的位置:首页 > 编程语言 > Java开发

自学马士兵spring2.5视频aop时遇到的问题

2013-08-23 14:22 232 查看
最近想自学下spring,由于我用的是spring3.2的jar包,可是听马士兵视频的时候他讲的是2.5的。在学到@Aspect时候遇到了问题,我打@Aspect居然没提示,我想应该是少添jar包了,但是我把spring3.2 libs下所有jar包添加进去还是出问题。最后在网上下载了它依赖的jar包问题解决。



注意它看它引入的包可以看出来。

import org.aspectj.lang.annotation.Aspect;

import org.aspectj.lang.annotation.Before;

import org.springframework.stereotype.Component;




它引入的aspectj.jar 而不是springfarmework里面的,再说springframework里面也没有。



三个jar包我已上传到资源里面了



再说一下关于 @Before("execution (* com.example.*(..))");

@Before("execution (* com.example.Person.*(..))");

execution 是关键字

第一个*是代表你要切入的方法返回值,第二个*代表任何返回值类型包括void(就是说不管你什么返回值类型我都切入)例如你要切入返回值为String类型直接把*换成java.lang.String即可,若方法返回值为void直接把*换成void

com.example.Person.*代表Person这个类下的所有方法。

(..)代表切入方法的形参。

上面的语句代表的意思就是:切入com.examplePerson这个类下所有的方法(形参个数和类型不限,返回值不限)。也就是只要是Person类下的方法我都切入。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: