关闭→
当前位置:趣知常识网>游戏数码>IT技术>IntelliJ IDEA中AspectJ插件的安装及使用

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

趣知常识网 人气:5.96K

AspectJ是AOP的一种实现技术,IntelliJ IDEA是一款集成开发工具。在使用IntelliJ IDEA编写AspectJ代码之前需要本机先安装AspectJ,具体的安装步骤可以参考小编的其他文章。AspectJ的功能类似于拦截器,这是一种切面技术,我们可以使用AspectJ切入满足切点规则的所有方法,并在方法的执行前后加一些通用的处理,下面跟着小编一起去学习吧。

工具/材料

IntelliJ IDEA

操作方法

首先我们打开IntelliJ IDEA开发工具,在菜单栏点击File-->Settings-->Plungins,进入到插件管理的页面。接下来我们在右侧的搜索框输入Aspect查询,下图在输入到Asp时便会模糊查询出结果,我们将AspectJ Support和Spring AOP/@AspectJ后面的方框勾选上即可。

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

接下来我们按住Ctrl+Shift+Alt+S,或者点击下图中所示的图标进入到Project Structure页面,点击Project Settings下方的Libraries,然后点击"+"号,最后选择Java,在接下来弹出的页面中选择这个jar包。

IntelliJ IDEA中AspectJ插件的安装及使用 第3张
IntelliJ IDEA中AspectJ插件的安装及使用 第4张
IntelliJ IDEA中AspectJ插件的安装及使用 第5张

接下来再回到Project Structure下方的Libraries设置,选择需要应用AspectJ的工程,然后点击“OK”按钮即可。

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

接下来进入到真正使用的部分了,我们首先创建一个Aspect切面,类似于创建一个类。在IntelliJ IDEA的菜单中点击“New”,新建一个Aspect。我们给这个切面取个名字MyAspectJ,注意下方的kind类别是Aspect,这里生成的aspectJ文件是后缀的,而不是s后缀的,这一点希望大家注意。

IntelliJ IDEA中AspectJ插件的安装及使用 第7张
IntelliJ IDEA中AspectJ插件的安装及使用 第8张

生成的aspectJ文件是后缀的,所以原来的编译工具javac便不能使用了,因此我们需要修改编译工具。菜单栏点击File-->Settings-->搜索Compile,结构为Build,Execution,Deployment-->Compiler-->Java Compiler。我们右侧将Use Compiler修改为Ajc,在Path to Ajc compiler中选择安装目录下的。

IntelliJ IDEA中AspectJ插件的安装及使用 第9张
IntelliJ IDEA中AspectJ插件的安装及使用 第10张
IntelliJ IDEA中AspectJ插件的安装及使用 第11张

以上编译工具也设置完了,我们开始编写代码了。首先我们写一个入门的HelloWorld类,该类中有一个需要被AspectJ切面拦截的方法sayHello(),还有一个main方法用于执行程序。

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

然后我们再完善上面创建的MyAspectJ,创建pointcut切点,注意该写法是aspectJ特有的语法。pointcut表示定义的是一个切点,logPointCut()是切点的名字,call()里面是需要拦截的,* 标识返回值是任意类型,然后是类名.方法名(),..表示任意类型的参数。我们定义before()和after()这两个前置和后置拦截,分别用于在别拦截方法的前后执行。

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

最后在HelloWorld类执行main方法启动程序,我们看一下执行的结果,可以看到在sayHello()方法的执行前后分别执行了拦截。

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

特别提示

后缀的文件必须要使用Ajc的编译器,javac不可以编译。

TAG标签:#插件 #IntelliJ #IDEA #AspectJ #安装 #