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

中国建设劳动学会是正规网站吗怎么在网站做推广和宣传

中国建设劳动学会是正规网站吗,怎么在网站做推广和宣传,怎么直播带货卖东西,看网站用什么软件AOP工作流程3#xff0c;AOP工作流程3.1 AOP工作流程流程1:Spring容器启动流程2:读取所有切面配置中的切入点流程3:初始化bean流程4:获取bean执行方法验证容器中是否为代理对象验证思路步骤1:修改App类,获取类的类型步骤2:修改MyAdvice类#xff0c;不增强步骤3:运行程序步骤… AOP工作流程3AOP工作流程3.1 AOP工作流程流程1:Spring容器启动流程2:读取所有切面配置中的切入点流程3:初始化bean流程4:获取bean执行方法验证容器中是否为代理对象验证思路步骤1:修改App类,获取类的类型步骤2:修改MyAdvice类不增强步骤3:运行程序步骤4:修改MyAdvice类增强步骤5:运行程序3.2 AOP核心概念目标 能够说出AOP的工作流程 3AOP工作流程 AOP的入门案例已经完成对于刚才案例的执行过程我们就得来分析分析这一节我们主要讲解两个知识点:AOP工作流程和AOP核心概念。其中核心概念是对前面核心概念的补充。 3.1 AOP工作流程 由于AOP是基于Spring容器管理的bean做的增强所以整个工作过程需要从Spring加载bean说起: 流程1:Spring容器启动 容器启动就需要去加载bean,哪些类需要被加载呢?需要被增强的类如:BookServiceImpl通知类如:MyAdvice注意此时bean对象还没有创建成功 流程2:读取所有切面配置中的切入点 上面这个例子中有两个切入点的配置但是第一个ptx()并没有被使用所以不会被读取。 流程3:初始化bean 判定bean对应的类中的方法是否匹配到任意切入点 注意第1步在容器启动的时候bean对象还没有被创建成功。 要被实例化bean对象的类中的方法和切入点进行匹配 匹配失败创建原始对象,如UserDao 匹配失败说明不需要增强直接调用原始对象的方法即可。 匹配成功创建原始对象目标对象的代理对象,如:BookDao 匹配成功说明需要对其进行增强对哪个类做增强这个类对应的对象就叫做目标对象因为要对目标对象进行功能增强而采用的技术是动态代理所以会为其创建一个代理对象最终运行的是代理对象的方法在该方法中会对原始方法进行功能增强 流程4:获取bean执行方法 获取的bean是原始对象时调用方法并执行完成操作获取的bean是代理对象时根据代理对象的运行模式运行原始方法与增强的内容完成操作 验证容器中是否为代理对象 为了验证IOC容器中创建的对象和我们刚才所说的结论是否一致首先先把结论理出来: 如果目标对象中的方法会被增强那么容器中将存入的是目标对象的代理对象如果目标对象中的方法不被增强那么容器中将存入的是目标对象本身。 验证思路 1.要执行的方法不被定义的切入点包含即不要增强打印当前类的getClass()方法 2.要执行的方法被定义的切入点包含即要增强打印出当前类的getClass()方法 3.观察两次打印的结果 步骤1:修改App类,获取类的类型 public class App {public static void main(String[] args) {ApplicationContext ctx new AnnotationConfigApplicationContext(SpringConfig.class);BookDao bookDao ctx.getBean(BookDao.class);System.out.println(bookDao);System.out.println(bookDao.getClass());} }步骤2:修改MyAdvice类不增强 因为定义的切入点中被修改成update1,所以BookDao中的update方法在执行的时候就不会被增强 所以容器中的对象应该是目标对象本身。 Component Aspect public class MyAdvice {Pointcut(execution(void com.suki.dao.BookDao.update1()))private void pt(){}Before(pt())public void method(){System.out.println(System.currentTimeMillis());} }步骤3:运行程序 步骤4:修改MyAdvice类增强 因为定义的切入点中被修改成update,所以BookDao中的update方法在执行的时候就会被增强 所以容器中的对象应该是目标对象的代理对象 Component Aspect public class MyAdvice {Pointcut(execution(void com.suki.dao.BookDao.update()))private void pt(){}Before(pt())public void method(){System.out.println(System.currentTimeMillis());} }步骤5:运行程序 至此对于刚才的结论我们就得到了验证这块大家需要注意的是: 不能直接打印对象从上面两次结果中可以看出直接打印对象走的是对象的toString方法不管是不是代理对象打印的结果都是一样的原因是内部对toString方法进行了重写。 3.2 AOP核心概念 在上面介绍AOP的工作流程中我们提到了两个核心概念分别是: 目标对象(Target)原始功能去掉共性功能对应的类产生的对象这种对象是无法直接完成最终工作的代理(Proxy)目标对象无法直接完成工作需要对其进行功能回填通过原始对象的代理对象实现 上面这两个概念比较抽象简单来说 目标对象就是要增强的类[如:BookServiceImpl类]对应的对象也叫原始对象不能说它不能运行只能说它在运行的过程中对于要增强的内容是缺失的。 SpringAOP是在不改变原有设计(代码)的前提下对其进行增强的它的底层采用的是代理模式实现的所以要对原始对象进行增强就需要对原始对象创建代理对象在代理对象中的方法把通知[如:MyAdvice中的method方法]内容加进去就实现了增强,这就是我们所说的代理(Proxy)。 小结 通过这一节中我们需要掌握的内容有 能说出AOP的工作流程AOP的核心概念 目标对象、连接点、切入点通知类、通知切面代理 SpringAOP的本质或者可以说底层实现是通过代理模式。 学习笔记 from 黑马程序员 By – Suki 2023/3/30
http://www.hkea.cn/news/14334293/

相关文章:

  • 西安推广网站wordpress teamtalk
  • 涪陵网站建设公司南京网站设计公司兴田德润优惠吗
  • 网站建设客户确认单儿童ppt模板 免费版 可爱
  • 做门用什么网站好wordpress模板标签
  • 成都网站建设成功案例单招网有偿做设计的网站
  • 网络营销教学网站品牌展柜设计制作
  • 网站排名下降了怎么办北京网站搭建开发
  • 不懂技术与产品怎样做网站网页源代码怎么看
  • 怎样用代码做网站中国建设部
  • 网站资质证书微信公众平台视频网站开发
  • 公司网站建设合同专业的营销网站建设公司排名
  • 建设网站简单教程wordpress 留言本插件
  • 仿牌网站专用vps好f123网站
  • 北京网站建设运营网络运营商ip地址
  • 可以免费做推广的网站重庆网站建设的培训机构
  • 做网站需要备注号码微信网站怎么建设
  • 上海网站建设科技公司国家建设工程安全质量监督网站
  • 网站建设支出账务处理嘉兴网站建设与管理专业
  • 网站开发模块学些什么软件电商购物网站建设
  • 游戏网站平台怎么做推广营销策划方案
  • 辽宁东方建设工程有限公司网站莱芜百度网站建设
  • 建设协会网站网页剪辑app
  • 外国做图网站北京全包圆装修公司好不好
  • 网站系统 外贸用php怎么做网站
  • go 做视频网站网络舆情处置的五个步骤
  • 网络上建个网站买东西多少钱服务器更改wordpress
  • 网站做seo必要的结构如何分析竞争对手的网站
  • 佛山网站建设是哪个好做一个公司网站需要多少钱
  • 常州网站建设咨询怎么用wordpress仿站
  • 北京制作网站报价外贸英语网站