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

自己做网站创业如何注册属于自己的网站

自己做网站创业,如何注册属于自己的网站,北京移动端网站优化,什么网站可以请人做软件下载1. 问题描述 Spring-mvc和Spring-boot中aop可以实现代理的功能,我们可以借此实现事务和日志记录或者限流等多种操作。但是,如果你在一个方法中调用其同类下的其他方法的时候不会触发AOP。本文主要说明其原因及解决办法和实现原理。 2. 原因 AIOP的本质是…

1. 问题描述

        Spring-mvc和Spring-boot中aop可以实现代理的功能,我们可以借此实现事务和日志记录或者限流等多种操作。但是,如果你在一个方法中调用其同类下的其他方法的时候不会触发AOP。本文主要说明其原因及解决办法和实现原理。

2. 原因

        AIOP的本质是,我们获取代理对象,该对象执行方法的时候,我们对其进行增强操作。例如:下图示例1中bicycle对象执行drive方法的时候,我们对其执行了增强。但是,如果我们在示例2中调用同类的其他方法的时候,本质使用this.drive(),此处的this是真实对象bicycle,而不是代理对象cglibProxy,因而不会进行增强。

3. 解决办法

3.1 直接从spring容器中获取

        参考下图中方法all1,SpringUtils实现代码参考 SpringUtils

3.2 借助Aspectj获取代理对象

        参考下图中方法all2

4. 解析

        SpringUtils直接是创建对象后,在spring容器中管理,便于理解。此处主要解析3.2。在启动类添加@EnableAspectJAutoProxy(exposeProxy = true, proxyTargetClass = true)后,可以发现在调用spring对象方法之前,会先进入CglibAopProxy中,并将当前spring对象放到ThreadLocal中,使用的时候直接从threadLocal中取即可。相关源码贴图如下。

4.1 org.springframework.aop.framework.CglibAopProxy

4.2 org.springframework.aop.framework.AopContext

5. 总结

        两种方法都是直接获取代理对象,调用目的方法达到方法增强的目的,并且都是相对成熟的实现方案。但是个人更喜欢前者(springUtils获取),原因在于无侵入,且大部分项目都会自定义该工具。后者相对于前者,或多或少存在一点开销。

http://www.ds6.com.cn/news/18239.html

相关文章:

  • 企业网站推广的方法有什么百度搜索引擎网站
  • 兖州那有做网站的百度账号登录入口官网
  • 网站开发背景和目的百度大搜
  • 网站上的图片做多大山东搜索引擎优化
  • 宜昌网站设计免费b2b推广网站
  • 专门做钱币的网站无线新闻台直播app下载
  • 上海珍岛做网站怎么样国外网站排名前十
  • 扬州做公司网站的公司大连seo网站推广
  • 济南科技网站建设提高工作效率的方法有哪些
  • 营业执照办理注意事项广东seo价格是多少钱
  • gis做图网站刷关键词排名软件
  • 杭州网站模板建站seo是怎么优化上去
  • 怎么做谷歌这样的网站定制网站建设
  • 金山网站制作高质量外链
  • 洛阳网站建设设计公司百度发布信息的免费平台
  • 那些网站做的比较好外贸网站建站
  • 武汉建站模板源码咨询网络服务商
  • 赤坎手机网站建设公司windows优化大师的特点
  • 大学生做网站的流程网络销售员每天做什么
  • html5 制作手机网站手游推广赚佣金的平台
  • java网站开发文档撰写百度健康人工客服电话24小时
  • 酒泉网站建设深圳优化seo
  • p2p电影网站开发google登录
  • 有做网站需求的客户郑州专业seo首选
  • 刚做的网站怎么在百度上能搜到什么是网络软文营销
  • 住房和城乡建设官网证书查询seo网络优化招聘
  • 生活做爰网站seo公司推荐
  • 企业网站用户群百度网盘资源免费搜索引擎入口
  • 网站建设属于哪个类目seo优化排名工具
  • 建设一个营销网站的费用平台seo