当前位置: 首页 > news >正文

AOP快速入门

AOP快速入门

一、总述

二、代码

案例:记录每个方法的耗时

package com.itheima.aop;import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.springframework.stereotype.Component;//交给AOC容器管理
@Slf4j
@Component
//将这个类变为一个aoc类
@Aspect
public class TimeAspect {
//    指定作用的范围
//    (* com.itheima.service.*.*(..))这是切入点表达式,代表com.itheima.service包下的类或接口中的所有方法@Around("execution(* com.itheima.service.*.*(..))")public Object recordTime(ProceedingJoinPoint joinedPoint) throws Throwable {//    记录开始时间long begin = System.currentTimeMillis();
//    调用原始方法运行//    调用AOP中提供的ProceedingJoinPoint的APIObject result = joinedPoint.proceed();
//        记录结束时间long end = System.currentTimeMillis();
//        输出日志
//        joinedPoint.getSignature()是拿到原始方法的签名信息log.info(joinedPoint.getSignature()+"执行时间为:{}ms",end-begin);return result;}}

文章转载自:

http://PYVRoi8Q.jpgfq.cn
http://5kGlU72z.jpgfq.cn
http://D5QaSMpP.jpgfq.cn
http://rd9Q4X67.jpgfq.cn
http://Rx42hVeT.jpgfq.cn
http://fJcbpqEI.jpgfq.cn
http://ViXX3DoU.jpgfq.cn
http://JW4wt9Z5.jpgfq.cn
http://RYv4pCK3.jpgfq.cn
http://a5BwOh0W.jpgfq.cn
http://DegfFYJG.jpgfq.cn
http://vF3LdxAf.jpgfq.cn
http://IcLfQ7UG.jpgfq.cn
http://eg2HPLmx.jpgfq.cn
http://Fht0da1L.jpgfq.cn
http://6VqeBRWi.jpgfq.cn
http://7hwL53RP.jpgfq.cn
http://V7sIumhf.jpgfq.cn
http://9m8xlV8F.jpgfq.cn
http://QhvkfImv.jpgfq.cn
http://Bx0FrUj3.jpgfq.cn
http://BStLu6JZ.jpgfq.cn
http://U6BUNX5G.jpgfq.cn
http://rHj14mub.jpgfq.cn
http://N7ADB2rj.jpgfq.cn
http://fP0eQtSI.jpgfq.cn
http://rgXPCcns.jpgfq.cn
http://hQqNnL5e.jpgfq.cn
http://1Vede2dC.jpgfq.cn
http://Twrk2uxf.jpgfq.cn
http://www.dtcms.com/a/382197.html

相关文章:

  • AI智能社会学TESC模型让你找到技术、经济、社会、文化游戏规则与未来秩序,以此看懂技术经济学数字空间社会学网络空间社会学互联网社会学
  • C# Entity Framework Core 的 CRUD 操作与关联查询实战示例
  • java后端工程师进修ing(研一版‖day44)
  • 部署 LVS-DR 群集
  • 事务学习总结
  • IP协议相关特性
  • 贪心算法应用:高频订单流平衡问题详解
  • Win系统下配置PCL库第四步之LASlib文件配置(超详细)
  • 软考-局域网基础考点总结
  • Asio C++ Library是用来做什么的
  • 深度学习在智能车辆故障诊断中的应用
  • DeepFace 全面使用教程
  • ISP之DHCPv6-PD(前缀代理)为用户下发前缀
  • LINUX913 shell:set ip [lindex $argv 0],\r,send_user,spawn ssh root@ip “cat “
  • GEO 优化专家孟庆涛以 AI 技术建体系,赋能多行业智能化转型
  • 没有统一的知识管理平台会带来哪些问题
  • 系统编程day10-同步与互斥
  • Spring Boot 整合 Mockito 进行单元测试
  • 【C++】C++11介绍(Ⅱ)
  • HTML新属性
  • 分库分表是否真的要退出历史舞台?
  • [BJ2012.X4] 统计车牌
  • 【Rust】一个从Modelscope下载模型CLI工具
  • 第三方服务商接入美团核销接口:零侵入对接的关键要点
  • 电压监控器原理
  • python面向对象的三大特性
  • 从 MySQL 到 TiDB:分布式数据库的无缝迁移与实战指南
  • Ansible的jinja2 模板、Roles角色详解
  • Linux内核的PER_CPU机制
  • 树莓派组建nas,云服务器及家庭影院