黑马程序员JavaWeb学习笔记-AOP概述
AOP概述
AOP:Aspect Oriented Programming(面向切面编程、面向方面编程),其实就是面向特定方法编程
优点:代码无侵入,减少重复代码,效率提高,维护方便
Spring AOP快速入门
--统计各个业务层方法执行耗时
//在pom.xml中导入AOP的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifacId>spring-boot-starter-aop</artifacId>
</dependency>
在aop包下创建新的类
//切入表达式
com.itheima.servie这个包下所有的接口或者类 (.*) 中 所有的方法(.*)
第一个*为类名或者接口名,第二个*为方法名
(..) 表示方法的形参也任意
// 记录开始时间
// 记录结束时间并计算耗时
AOP核心概念
// 只有list这一个方法是切入点
@Around("execution(*com.itheima.service.impl.DeptServiceImpl.list())")
AOP执行流程
动态代理技术
通知类型
目标方法:切入点表达式中所包含的方法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具