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

三桥做网站网站建设柳市

三桥做网站,网站建设柳市,外贸广告推广,wordpress搬家问题图解 Spring 核心数据结构#xff1a;BeanDefinition 简介 使用spring框架的技术人员都知道spring两个大核心技术IOC和AOP#xff0c;随着投入更多的时间去学习spring生态#xff0c;越发觉得spring的发展不可思议#xff0c;一直都是引领着Java EE的技术变革#xff0c;这…图解 Spring 核心数据结构BeanDefinition 简介 使用spring框架的技术人员都知道spring两个大核心技术IOC和AOP随着投入更多的时间去学习spring生态越发觉得spring的发展不可思议一直都是引领着Java EE的技术变革这样一系列优秀的框架我们应该花多一点时间去深入思考spring生态的发展学习spring中优秀的设计思想。以前学习spring我们都是梳理一下spring bean的生命周期debug一下spring aop的源码最近想想感觉完全不够深入所以近期想着出一系列文章以图解的方式细致入微的去理解spring的每一个细节本篇将围绕BeanDefinition的设计这一细节展开讲解希望对读者有所启发。 一、spring bean是什么 使用了这么久的spring框架那么spring bean是什么呢我们都知道spring ioc会载入和管理我们的bean我理解bean实际就是我们程序中使用的对象初学spring的时候经常被问到不用spring我们是怎么开发的没有spring我们使用对象的时候自己new一旦该对象不再被使用则由 Java 自动进行垃圾回收。简单的描述我们是不是感觉spring bean没什么神秘了就是我们new的对象。 Spring 中的对象是 beanbean实际上就是我们new的对象只不过 Spring 不再自己去 new 对象了而是由 IoC 容器去帮助我们实例化对象并且管理它我们需要哪个对象到IoC 容器里获取即可。IoC 其实就是解决对象之间的耦合问题Spring Bean 的生命周期完全由容器控制。 我们对spring bean有了一些概念之后那我们是否好奇spirng bean是以什么新式存储的呢 二、BeanDefinition的设计 在Spring框架中定义了一个BeanDefinition接口用于描述和配置Spring容器中的Bean用于定义Bean的配置元数据包括类名、作用域、构造函数参数、属性值、初始化方法、销毁方法和依赖关系等信息BeanDefinition提供了一种抽象使得开发者能够以声明性的方式描述如何实例化、配置和组装一个特定的Bean。 随着技术的发展BeanDefinition接口得到了极大的发展丰富继承体系如下图所示 1、AttributeAccessor: 提供对 BeanDefinition 属性操作能力。 2、AttributeAccessorSupport: 使用了 Map 进行属性的存储的。 3、BeanMetadataAttributeAccessor: 代表了一个 Bean 元数据的属性操作。 4、BeanMetadataElement: BeanDefinition 元数据返回该 Bean 的来源。 5、BeanDefinition: 用来描述 Bean里面存放 Bean 元数据比如 Bean 类名、scope、属性、构造函数参数列表、依赖的 Bean、是否是单例类、是否是懒加载等一些列信息。 6、AbstractBeanDefinition: 抽象类统一实现了 BeanDefinition 定义的一部分操作可以说是定义了 BeanDefinition 很多默认的属性。 7、RootBeanDefinition: 代表一个 XMLJava Config来的 BeanDefinition。 8、AnnotatedBeanDefinition: 表示注解类型 BeanDefinition。有两个重要的属性AnnotationMetadata、MethodMetadata 分别表示 BeanDefinition 的注解元信息和方法元信息。实现了此接口的 BeanDefinition 可以获取到注解元数据和方法元数据。 9、ChildBeanDefinition: 可以让子 BeanDefinition 定义拥有从父母那里继承配置的能力。 10、GenericBeanDefinition: 是 Spring 2.5 之后才有的这个的想法是用来替代 RootBeanDefinition/ChildBeanDefinition而 RootBeanDefinition/ChildBeanDefinition 可以在 Spring 预加载的时候使用。 11、AnnotatedGenericBeanDefinition: 表示 Configuration 注解注释的 BeanDefinition 类。是 AnnotatedBeanDefinition 的一个具体实现。传入指定类后可以获取类中的注解。 12、ScannedGenericBeanDefinition: 表示 Component、Service、Controller 等注解注释的 Bean 类。是 AnnotatedBeanDefinition 的另一个实现与 AnnotatedGenericBeanDefinition 不同的是ScannedGenericBeanDefinition 是通过扫描 class然后操作 ASM 进行解析的。 总结 本篇简单介绍了spring bean的相关概念以及初步分析了BeanDefinition的设计理论概念性的内容总是枯燥乏味的为了不影响文章的可读性本篇先介绍到这里后续再出文章进行补充讲解。
http://www.hkea.cn/news/14505610/

相关文章:

  • 南京网站设计制作公司排名成都山而网站建设公司
  • 金华 网站建设如何创建一个新网站
  • 选择做华为网站的目的和意义企业网站开发文献综述
  • 做磁力搜索网站好吗门户型网站有哪些
  • 网站怎么做搜索功能阿里云邮箱企业版
  • 没有网站可以备案吗做网站什么价格
  • 学做宝宝衣服网站好安徽省建设工程八大员报名网站
  • 懒人手机网站网站版块设计
  • 如何做淘宝直播教学视频网站上海网站建设公司站霸网络
  • 影响网站收录的因素wordpress显示全部标签
  • 网站推广营销联系方式国外电商平台排名
  • 如何查询网站二级页面流量重庆十大软件公司
  • 网站订单系统模板下载网站ftp
  • 腾讯云怎么备案网站吗临湘市网站
  • 中企动力做的保安服务网站怎么做会员积分网站
  • 免费站长工具今天出京入京最新通知
  • 建设网站过程视频wordpress产品选择
  • 织梦官方网站怎样制作免费手机网站
  • 怎样选择网站服务器在喵窝网站怎么做图
  • php开发的大型金融网站有哪些张家口百度免费做网站
  • 湖南住房建设厅网站查看商标是否被注册官网
  • 福田附近公司做网站建设多少钱网页开发背景与意义
  • 宜兴做网站多少钱淘宝网的网站设计特色
  • 个人建设网站要钱吗网站服务器怎么重启
  • 西安北郊网站开发最完整的外贸流程图
  • 上海住房与建设部网站广州家居网站设计
  • 网站编程代码大全优秀旅游网站设计
  • 电商网站建设前的市场分析内容深圳市设计师服务平台
  • 信息化建设网站湖北省节能建设网站
  • 建设企业网站企业网上银行助手下载企业品牌网站建设