阶段3 2.Spring_08.面向切面编程 AOP_5 切入点表达式的写法 切点表达式的写法 访问修饰符可以省略 返回值可以使用通配符,表示任意返回值 包名可以使用通配符 包名可以使用.. 类名和方法名都可以使用*来实现通配 参数列表 实际开发中的写法 aspectj
写测试类来测试。。也不需要整合JUnit了就是个普通的测试类。
我们要看就是有没有给我们真正的实现 记录日志
配置起作用了。
三个方法都调用一下
目前我们的配置只能对saveAccount增强
通常情况下 我是对业务层所有的方法添加增强,尤其是在事务控制时
访问修饰符可以省略
运行测试。没有问题
返回值可以使用通配符,表示任意返回值
这里也就是void 用*代替了。
包名可以使用通配符
包名可以使用..
任意包下只有有AccountServiceImpl类 里面的方法saveAccount方法都会被增强
类名和方法名都可以使用*来实现通配
先把类名改成*
AccountServiceImpl这个类名改成了*
把方法名也改成了*。表示没有参数的方法都被增强了。
保存和删除都被增强了
参数列表
这里参数写上int类型
只有一个方法参数是int的
参数写个*。表示有参数就可以
参数改成..点点
这样是哪个方法全部被增强
实际开发中的写法
在实际的开发中不要写上这种全统配的方式,这种方式有个很大的问题,当你的程序在执行的时候,所有类的方法都满足这个条件。你的增强代码被这些方法都执行了一次。这显然不是我们想要的
通常的写法
aspectj
aspectj是语言的软件联盟。负责给我解析切入点表达式