面向对象与面向切面

面向对象编程(OOP)

是一种编程思想,三大特性就是封装继承和多态,封装是将类的属性给私有化,不让外部直接访问,通过setter和getter方法实现外部访问,提高了程序的安全性;程序的扩展性可重用性表现在继承和多态上,子类可以继承父类的方法来实现操作,多态实现父类调用子类的实现方法。这样增强了程序的可维护性


面向切面编程(AOP)

是一种编程范式【思想】,与业务无关,描述的是横切点,提供从另外一个角度来考虑程序结构,将系统的公共功能集中解决,实现解耦;用来完善面向对象编程。


配置AOP

1、引入相关jar包

2、引入Spring的配置文件(有两处aop的内容)


3、注入MyBefore和MyImpl



AOP相关概念
关注点[joinpoint]
通知[Advice]
切面[Aspect]
切入点[Pointcut]
目标对象[Target]
AOP代理
织入[Weaving]:生成代理的过程



AOP的通知类型
before 前置通知
afterThrowing         抛出异常后通知
afterReturn 返回后通知
after 后通知
around 环绕通知


execution切入点表达式

*  匹配任何数量的字符
..  任意数量子包和任意参数
+ 指定类型的子类型,作为后缀放在类型模式后

*
1、表示任意类和包名
2、表示任意方法名
3、表示任意一个类型的参数
..
1、表示任意数量的子包

2、表示任意数量和任意类型的参数


// 表示com.aop的 任意包下的 任意类任意方法任意参数
execution(* com.aop.*.*.*(*))

// 表示任意 多个子包任意类任意方法任意参数
execution(* com..*.*(*))


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值