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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IntelliJ IDEA中AspectJ插件的安装及使用相关的知识,希望对你有一定的参考价值。

参考技术A

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后面的方框勾选上即可。

    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不可以编译。

以上是关于IntelliJ IDEA中AspectJ插件的安装及使用的主要内容,如果未能解决你的问题,请参考以下文章

IntelliJ IDEA + AspectJ

由 AspectJ 编译器编织的 Spring 方面在 Maven 中工作,但在 IntelliJ IDEA 中没有

AspectJ 在 IntelliJ 的 maven 项目中不起作用

intellij idea怎么安装插件

开发Intellij Idea插件

intellij idea15的golang插件怎么配置