标签:验证 系统 操作 alt 图片 ntc 实现 color 统一
AOP能够将那些与业务无关,却为业务模块所共同调用的逻辑或责任(例如事务处理、日志管理、权限控制等)封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可拓展性和可维护性。
简单例子:在某个项目里,非管理员不能对某些业务进行操作,代码如下:
从上面的代码我们可以看出这种方式达到了权限验证的功能,但是如果有100个方法的话,就会显得冗余,代码不好维护,这是传统的硬编码方式
我们对代码进行改进(以注解的方式)
1,新建一个切面(Aspect)
@Pointcut是切入点,我需要切入那些类或者那些方法,它有很多种方式(@annotation() execution() @within() @target() this() 等等 , 常用的是@annotation() , execution()
)
2.注解
3.实现
现在代码就变得简洁了,那个方法需要进行验证,我就加上注解就行
再来一个日志管理的简单例子
使用JoinPoint可以获取一些参数信息
通过面向切面编程,将公共代码抽离出来,进行统一化的处理,更加有效提高代码质量,以上只是一些再简单不过的例子,
标签:验证 系统 操作 alt 图片 ntc 实现 color 统一
原文地址:https://www.cnblogs.com/steakliu/p/11182333.html