AOP:(Aspect-oriented-Programming,面向切面编程)
与AOP相关的名词:
- Aspect:切面
- Pointcut:切入点
- Advice:通知
使用注解定义通知类型:
- @Before:前置通知
- @AfterReturning:后置通知
- @After:最终通知
- @AfterThrowing:异常通知
- @Around:环绕通知
本次我采用打印机为例子:
有两个接口:Ink和Paper类
- Ink下有彩印 ColorInk 和黑白 BlackInk 两种打印方式
- paper下有A4Paper 和 B5Paper 两种类型
- 编写一个Printer类,里面封住了Ink 和 Paper类型以及自定义的打印机字符串String类型
- ShowPrinterInfoAspect就是用来演示切面的类
- Boss:main方法
pom.xml文件中要下载切面的jar包:
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.6.11</version>
</dependency>
<dependency>