aop2
使业务与非业务处理逻辑分离,比如Spring的事务,通过事务的注解配置,
Spring会自动在业务方法中开启、提交业务,并且在业务处理失败时,执行相应的回滚策略。
AOP 采取横向抽取机制(动态代理),取代了传统纵向继承机制的重复性代码,
其应用主要体现在事务处理、日志管理、权限控制、异常处理等方面。
主要作用是分离功能性需求和非功能性需求,使开发人员可以集中处理某一个关注点或者横切逻辑,
减少对业务代码的侵入,增强代码的可读性和可维护性。
简单的说,AOP 的作用就是保证开发者在不修改源代码的前提下,为系统中的业务组件添加某种通用功能。
日志记录
事务管理
权限验证
性能监测
AOP可以拦截指定的方法,并且对方法增强,比如:事务、日志、权限、性能监测等增强,
而且无需侵入到业务代码中,使业务与非业务处理逻辑分离。