IntelliJ IDEA中AspectJ插件的安装及使用

AspectJ是AOP的一种实现技术,IntelliJ IDEA是一款集成开发工具 。在使用IntelliJ IDEA编写AspectJ代码之前需要本机先安装AspectJ,具体的安装步骤可以参考小编的其他文章 。AspectJ的功能类似于拦截器 , 这是一种切面技术,我们可以使用AspectJ切入满足切点规则的所有方法,并在方法的执行前后加一些通用的处理,下面跟着小编一起去学习吧 。
工具/材料IntelliJ IDEA
操作方法01、首先我们打开IntelliJ IDEA开发工具,在菜单栏点击File-->Settings-->Plungins , 进入到插件管理的页面 。接下来我们在右侧的搜索框输入Aspect查询,下图在输入到Asp时便会模糊查询出结果,我们将AspectJ Support和Spring AOP/@AspectJ后面的方框勾选上即可 。

IntelliJ IDEA中AspectJ插件的安装及使用


【IntelliJ IDEA中AspectJ插件的安装及使用】02、接下来我们按住Ctrl Shift Alt S,或者点击下图中所示的图标进入到Project Structure页面,点击Project Settings下方的Libraries,然后点击" "号,最后选择Java,在接下来弹出的页面中选择aspectjrt.jar这个jar包 。
03、接下来再回到Project Structure下方的Libraries设置,选择需要应用AspectJ的工程,然后点击“OK”按钮即可 。
04、接下来进入到真正使用的部分了 , 我们首先创建一个Aspect切面,类似于创建一个类 。在IntelliJ IDEA的菜单中点击“New”,新建一个Aspect 。我们给这个切面取个名字MyAspectJ,注意下方的kind类别是Aspect,这里生成的aspectJ文件是.aj后缀的,而不是.class后缀的 , 这一点希望大家注意 。
05、生成的aspectJ文件是.aj后缀的 , 所以原来的编译工具javac便不能使用了 , 因此我们需要修改编译工具 。菜单栏点击File-->Settings-->搜索Compile,结构为Build,Execution,Deployment-->Compiler-->Java Compiler 。我们右侧将Use Compiler修改为Ajc,在Path to Ajc compiler中选择安装目录下的aspectjtools.jar 。
06、以上编译工具也设置完了,我们开始编写代码了 。首先我们写一个入门的HelloWorld类,该类中有一个需要被AspectJ切面拦截的方法sayHello(),还有一个main方法用于执行程序 。
07、然后我们再完善上面创建的MyAspectJ,创建pointcut切点,注意该写法是aspectJ特有的语法 。pointcut表示定义的是一个切点,logPointCut()是切点的名字,call()里面是需要拦截的,* 标识返回值是任意类型,然后是类名.方法名() , ..表示任意类型的参数 。我们定义before()和after()这两个前置和后置拦截,分别用于在别拦截方法的前后执行 。
08、最后在HelloWorld类执行main方法启动程序,我们看一下执行的结果,可以看到在sayHello()方法的执行前后分别执行了拦截 。
特别提示.aj后缀的文件必须要使用Ajc的编译器,javac不可以编译 。

    推荐阅读