Spring2

Spring-第二章

 

面向对象,面向接口,面向切面,面向注解

 

Spring-AOP 代理,增强

目标类Service + 额外功能 = 代理类

比如:日志处理/事务处理/异常处理/性能分析…Redis 非关系型数据

1. 通过spring AOP的代理功能,给代码增加额外的通用功能

2. 业务逻辑就专心的处理实际需求,通用的增强功能独立出来

3. 代理的专业术语

额外功能叫 增强 通知

目标类叫  切入点 切面

将增强 加入到 切入点,叫编织

AOP是面向切面编程的一种实现

面向对象OOP

面向接口 定义标化的调用

面向切面 添加辅助功能

 

 

AOP步骤:

1. 导包

 

2. 书写一个增强类(前置为例)

 

 

3. 配置增强类的bean

 

4. 配置AOP的编织功能 写接口的包路径

 

 

1: 通配接口或者类

2: 包名

3: 类名

4: 方法名

5: 参数

 

-----

增强方式4种:

1. 前置增强,在核心功能之前执行的额外功能

 

2. 后置增强,在核心功能之后执行的额外功能

 

3. 异常增强,在核心功能发生异常时执行的额外功能,先捕获,后抛出  

 

 

 

 

4. 环绕增强,在核心功能之前以及之后执行的额外功能

 

 

AOP注解

可以灵活的定义哪个具体的方法实现增强功能

1. 写一个软接口,自定义一个注解

@AnnotationLog

 

2. 增强类照常写

3. 修改切入点 由面到点

 

4. 放置注解 在需求增强的方法(实现类)上面放置

 

 

AOP实例 – 环绕增强 日志记录

需求:记录图书的service层的日志操作,到数据库

1. 创建商品日志记录表 Book_Log

 

2. 完成日志记录表的插入逻辑

3. 环绕增强搜集日志记录参数,并测试

4. 环绕增强调用日志记录表的插入逻辑,完成日志记录功能

5. 正常执行目标类的核心代码

注意:需要采用Spring IOC 模式,加载bean

 

posted @ 2023-01-12 22:04  月丫湾  阅读(29)  评论(0)    收藏  举报