引出动态代理
2025-4-20
| 2025-4-20
Words 712Read Time 2 min
type
status
date
slug
summary
tags
category
icon
password

需求说明

  1. 有Vehicle(交通工具接口,有一个run方法),下面有两个实现类,Car和Ship
  1. 当运行Car对象的run方法和Ship对象的run方法
  1. 每次运行前和运行后都执行方法

代码

结果

notion image
image-20230213175841051
如果有很多这样的实现类,那么需要每次都要把前置方法和后置方法写一遍,既冗余又不好维护。

解决方案

使用动态代理的方式

生成代理对象,使用代理对象执行run方法,在代理对象执行方法前后输出统一的日志。

代码

测试

结果

notion image
image-20230214142122812
可以看到,运行类型也是代理对象。
手写Spring的getBean方法延迟队列
Loading...