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

腾讯云服务器做网站达州建设网站

腾讯云服务器做网站,达州建设网站,网站建设免费国外,做美容有哪些网站文章目录 #x1f343;什么是AOP#x1f333;什么是Spring AOP#x1f334;上手Spring AOP#x1f6a9;引入依赖#x1f6a9;编写AOP程序 ⭕总结 #x1f343;什么是AOP AOP是Aspect Oriented Programming的简称#xff08;又称为面向切⾯编程#xff09; 什么是面向… 文章目录 什么是AOP什么是Spring AOP上手Spring AOP引入依赖编写AOP程序 ⭕总结 什么是AOP AOP是Aspect Oriented Programming的简称又称为面向切⾯编程 什么是面向切面编程呢? 切面就是指某⼀类特定问题,所以AOP也可以理解为面向特定方法编程. 什么是面向特定方法编程呢? 比如博主在前面实现的的登录校验,就是⼀类特定问题.登录校验拦截器,就是对登录校验这类问题的统⼀处理.所以,拦截器也是AOP的⼀种应用. AOP是⼀种思想,拦截器是AOP思想的⼀种实现.Spring框架实现了这种思想,提供了拦截器技术的相关接⼝. 同样的,统⼀数据返回格式和统⼀异常处理,也是AOP思想的⼀种实现. 简单来说:AOP是⼀种思想,是对某⼀类事情的集中处理 什么是Spring AOP AOP是⼀种思想,它的实现⽅法有很多,有Spring AOP也有AspectJ、CGLIB等. Spring AOP是其中的⼀种实现⽅式. 在博主实现图书馆管理实现了统⼀功能,那么是不是就学会了Spring AOP呢答案当然不是. 拦截器作用的维度是URL(⼀次请求和响应),ControllerAdvice 应用场景主要是全局异常处理(配合自定义异常效果更佳),数据绑定,数据预处理. AOP作用的维度更加细致(可以根据包、类、方法名、参数等进⾏拦截),能够实现更加复杂的业务逻辑. 举个例⼦: 我们现在有⼀个项⽬,项目中开发了很多的业务功能 现在有⼀些业务的执行效率⽐较低,耗时较⻓,我们需要对接⼝进⾏优化. 第⼀步就需要定位出执行耗时⽐较长的业务方法,再针对该业务方法来进⾏优化 如何定位呢? 我们就需要统计当前项⽬中每⼀个业务⽅法的执⾏耗时. 如何统计呢? 可以在业务⽅法运⾏前和运⾏后,记录下⽅法的开始时间和结束时间,两者之差就是这个⽅法的耗时. 就如下图所示 这种⽅法是可以解决问题的,但⼀个项目中会包含很多业务模块,每个业务模块⼜有很多接⼝,⼀个接⼝⼜包含很多⽅法,如果我们要在每个业务⽅法中都记录⽅法的耗时,对于程序员而言,会增加很多的⼯作量. AOP就可以做到在不改动这些原始⽅法的基础上,针对特定的方法进行功能的增强. AOP的作用在程序运⾏期间在不修改源代码的基础上对已有⽅法进⾏增强达到⽆侵⼊性实现解耦 我们先来看一下Spring AOP是如何实现的吧、 上手Spring AOP 我们使用Spring AOP来实现一下统计时间 引入依赖 在pom.xml⽂件中添加配置 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-aop/artifactId /dependency编写AOP程序 首先我们准备需要实现统计的程序如下 编写AOP相关程序如下 Slf4j Aspect Component public class TimeAspect {/*** 记录⽅法耗时*/Around(execution(* com.example.demo.controller.*.*(..)))public Object recordTime(ProceedingJoinPoint pjp) throws Throwable {//记录⽅法执⾏开始时间long begin System.currentTimeMillis();//执⾏原始⽅法Object result pjp.proceed();//记录⽅法执⾏结束时间long end System.currentTimeMillis();//记录⽅法执⾏耗时log.info(pjp.getSignature() 执⾏耗时: {}ms, end - begin);return result;} }由于这里只是简单上手AOP所以这里不做过多讲解。只是进行简单解释 代码解释如下 Aspect:标识这是⼀个切⾯类 Around:环绕通知,在⽬标⽅法的前后都会被执⾏.后⾯的表达式表⽰对哪些方法进行增强. ProceedingJoinPoint.proceed()让原始方法执行并返回一个值 该方法最后需要返回一个值也就是执行原始方法所接受的值 整个代码划分为三部分 接下来我们运行程序来观察一下效果 运行程序观察日志如下 我们通过AOP⼊门程序完成了业务接执行耗时的统计. 通过上面的程序,我们也可以感受到AOP面向切⾯编程的⼀些优势 代码⽆侵⼊:不修改原始的业务方法,就可以对原始的业务方法进行了功能的增强或者是功能的改变 减少了重复代码 提高开发效率 维护方便 ⭕总结 关于《【JavaEE进阶】 Spring AOP快速上手》就讲解到这儿感谢大家的支持欢迎各位留言交流以及批评指正如果文章对您有帮助或者觉得作者写的还不错可以点一下关注点赞收藏支持一下
http://www.pierceye.com/news/541168/

相关文章:

  • 遂宁门户网站建设先进工作单位帮别人做违法网站会判刑吗
  • 设计公司网站套餐怎么样做短视频
  • 化妆品做网站流程什么是网络营销产品
  • windows搭建php网站推荐商城网站建设
  • php网站开发门槛高吗网络推广网站推广
  • 网站推广的8种方法微信怎么开创公众号
  • 大鹏外贸网站建设海口网站网站建设
  • 手表东莞网站建设技术支持信创网站
  • 中小企业为什么要建网站wordpress特效 插件推荐
  • 好的门户网站龙南建设局网站
  • 深圳住房和建设局官网网站设计导航精选最好的设计网站大全
  • 个人备案网站建设方案书网站开发实训教程
  • 周口网站关键词优化重庆招商网
  • 国内优秀网站设计师江西宜春市城市建设档案馆网站
  • 怎么查看网站用的php还是.networdpress博客页修改
  • 企业查询网站wordpress注册没反应
  • 如何建立自已的购物网站长沙网站制作主要公司
  • 深圳 电子政务网站建设方案WordPress的login在哪里改
  • 网站快速网站推广怎么制作图片视频和配音乐
  • 河南网站制作团队湖南网址大全
  • 2019为网站网站做代理被判缓刑网站信息化建设建议
  • 部署推进网站建设网站域名费用
  • 企业信息门户网站建设方案seo网站模版
  • 谷歌有做网站建设快速建站哪里好
  • 坤和建设 网站深圳高端网站设计开发
  • 怎么做网站策划的模板如何注册咨询公司
  • 做婚恋网站投入多少钱php注册网站源码带数据库
  • 苏州网站建设制作方案手机上做app的软件
  • 青岛营销型网站html网页制作期末作业
  • 加强网站微信公众号平台建设php 5.4 wordpress