知识卡片

动态代理抽横切

普通读书笔记卡 · 1861.a

内容

动态代理把日志、事务、过滤等横切逻辑从业务类中抽离,在运行时织入目标接口。发散:AOP 的价值就在这里,重复的管控逻辑集中维护,业务代码保留核心语义。

参考来源

- 位置:《秒懂设计模式 2021》第12章《代理》12.4节「万能的动态代理」及Spring AOP举例(源文件:_epub-src/OEBPS/Text/chapter012.html) - 结论依据:原文明确动态代理把黑名单过滤等逻辑与业务接口剥离,并直接举例Spring AOP用于日志、事务等横切逻辑,直接支持卡片论点。 - 原始内容:"黑名单过滤器的功能代码不再与任何业务接口有瓜葛了……在很多软件框架中都大量应用了动态代理的理念,如Spring的面向切面编程技术AOP……我们最常用到的就是给多个类方法前后动态加入写日志,此外还有为业务类加上数据库事务控制"