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

新乡商城网站建设哪家专业哪里买到纯净网站模板

新乡商城网站建设哪家专业,哪里买到纯净网站模板,html教程网,怎么删除安装wordpress一、概述 在Spring框架中,IOC(Inversion of Control)容器负责管理应用程序中的对象(即Bean)的生命周期和依赖关系。Spring提供了一系列的Aware接口,允许Bean在初始化时获取Spring容器中的某些资源或信息。…

一、概述

在Spring框架中,IOC(Inversion of Control)容器负责管理应用程序中的对象(即Bean)的生命周期和依赖关系。Spring提供了一系列的Aware接口,允许Bean在初始化时获取Spring容器中的某些资源或信息。这些接口通常以Aware结尾,表示Bean能够“感知”到某些特定的Spring容器功能。

1.2 spring 对Aware对实现

spring将Aware 分成两大类,一类是可以直接继承实现分别为 bean、classLoader、beanFactory。另一类是通过 ApplicationContextAwareProcessor 后置处理器,间接回调。
在bean注册的时候,将实现继承这些接口( bean、classLoader、beanFactory)的类相关的信息注入该类中。如下图:
在这里插入图片描述
通过 ApplicationContextAwareProcessor 后置处理器:
在这里插入图片描述

二、常用的Aware

接下来我们来看看Spring提供的常用Aware 接口。

2.1 BeanNameAware

在这里插入图片描述
实现 BeanNameAware 接口需要实现 setBeanName () 方法,这个方法只是简单的返回我们当前的 beanName,这个接口表面上的作用就是让实现这个接口的 bean 知道自己在 spring 容器里的名字,而且官方的意思是这个接口更多的使用在 spring 的框架代码中,实际开发环境应该不建议使用,因为 spring 认为 bean 的名字与 bean 的联系并不是很深,(的确,抛开 spring API 而言,我们如果获取了该 bean 的名字,其实意义不是很大,我们没有获取该 bean 的 class,只有该 bean 的名字,我们也无从下手,相反,因为 bean 的名称在 spring 容器中可能是该 bean 的唯一标识,也就是说再 beanDefinitionMap 中,key 值就是这个 name,spring 可以根据这个 key 值获取该 bean 的所有特性)所以 spring 说这个不是非必要的依赖。

2.2 BeanClassLoaderAware

2.2.1 介绍

在这里插入图片描述
BeanClassLoaderAware 接口为开发者提供了一种简单而有用的方式来获取 Bean 的类加载器信息。通过实现该接口,Bean 可以在初始化阶段获取自身类加载器,从而更灵活地处理一些与类加载器相关的逻辑。

2.3 BeanFactoryAware

2.3.1 简介

在这里插入图片描述
BeanFactoryAware 接口是一个回调接口,它提供了一个用于设置 Bean 工厂的方法。当一个 Bean 实现了 BeanFactoryAware 接口时,在该 Bean 实例被实例化后,Spring 容器会调用 setBeanFactory 方法,并将该 Bean 所在的工厂作为参数传递进去。

2.3.2 使用场景

BeanFactoryAware 最常用的场景 是在需要根据特别变量创建或者配置Bean,在运行过程中获取对应相关连的bean做一些拓展或者实现策略模式等。
BeanFactoryAware主要解决代码间的耦合问题,并且可以利用容器上下文范围其他的bean,以便实现更多的功能。

2.4 EnvironmentAware

2.4.1 介绍

在这里插入图片描述
所有注册到 Spring 容器内的 bean,只要该 bean 实现了 EnvironmentAware 接口,并且进行重写了 setEnvironment 方法的情况下,那么在工程启动时就可以获取得 application.properties 的配置文件配置的属性值,这样就不用我们将魔法值写到代码里面了。

2.5 EmbeddedValueResolverAware

在这里插入图片描述
EmbeddedValueResolverAware 接口为开发者提供了一种获取EmbeddedValueResolver对象的机会,该对象可用于解析占位符表达式。通过实现该接口,Bean 可以在初始化阶段获取解析占位符的能力,从而更灵活地处理一些与动态属性值相关的逻辑。

2.6 ResourceLoaderAware

在这里插入图片描述
ResourceLoaderAware 是特殊的标记接口,它希望拥有一个 ResourceLoader 引用的对象。当实现了 ResourceLoaderAware 接口的类部署到 application context (比如受 Spring 管理的 bean) 中时,它会被 application context 识别为 ResourceLoaderAware。 接着 application context 会调用 setResourceLoader (ResourceLoader) 方法,并把自身作为参数传入该方法 (记住,所有 Spring 里的 application context 都实现了 ResourceLoader 接口)。

既然 ApplicationContext 就是 ResourceLoader,那么该 bean 就可以实现 ApplicationContextAware 接口并直接使用所提供的 application context 来载入资源,但是通常更适合使用特定的满足所有需要的 ResourceLoader 实现。 这样一来,代码只需要依赖于可以看作辅助接口的资源载入接口,而不用依赖于整个 Spring ApplicationContext 接口。

2.7 ApplicationEventPublisherAware

在这里插入图片描述
ApplicationEventPublisherAware 接口是一个回调接口,它提供了一个用于设置 Bean 所在的ApplicationEventPublisher 的方法。当一个 Bean 实现了 ApplicationEventPublisherAware 接口时,在该 Bean 实例被实例化后,Spring 容器会调用 setApplicationEventPublisher 方法,并将该 Bean 所在的ApplicationEventPublisher 作为参数传递进去。主要用于获取发布事件的 ApplicationEventPublisher,使得 Bean 能够在运行时发布自定义的事件。

2.8 MessageSourceAware

在这里插入图片描述
MessageSourceAware 接口是 Spring 提供的一个用于访问消息资源(例如文本消息)的接口。国际化的主要目标是使应用程序的用户界面能够根据用户的首选语言或地区显示相应的消息。

2.9 ApplicationContextAware

在这里插入图片描述
ApplicationContextAware 的作用是可以方便获取 Spring 容器 ApplicationContext,从而可以获取容器内的 Bean。ApplicationContextAware 接口只有一个方法,如果实现了这个方法,那么 Spring 创建这个实现类的时候就会自动执行这个方法,把 ApplicationContext 注入到这个类中,也就是说,spring 在启动的时候就需要实例化这个 class(如果是懒加载就是你需要用到的时候实例化),在实例化这个 class 的时候,发现它包含这个 ApplicationContextAware 接口的话,sping 就会调用这个对象的 setApplicationContext 方法,把 applicationContext Set 进去了。


文章转载自:

http://pKqypAyh.qgmgb.cn
http://aFW6xm0G.qgmgb.cn
http://RdAcU5HN.qgmgb.cn
http://xwn14AkD.qgmgb.cn
http://NYt35Urf.qgmgb.cn
http://C7EgFMxQ.qgmgb.cn
http://f2MXYa2d.qgmgb.cn
http://PkQR1sKA.qgmgb.cn
http://KAhlN7Km.qgmgb.cn
http://YNfMiqIx.qgmgb.cn
http://ZtkA97qR.qgmgb.cn
http://Mnk8afle.qgmgb.cn
http://UShjcQWa.qgmgb.cn
http://dNtxSTs3.qgmgb.cn
http://cB58pIF5.qgmgb.cn
http://MXh7fY3B.qgmgb.cn
http://Glcc6h0V.qgmgb.cn
http://FIErHIpD.qgmgb.cn
http://yiGHPhDo.qgmgb.cn
http://cBR9Bov8.qgmgb.cn
http://AVUUXDKh.qgmgb.cn
http://wTiqaxJK.qgmgb.cn
http://iZqfayrZ.qgmgb.cn
http://M7PzP78M.qgmgb.cn
http://4cV3Rq67.qgmgb.cn
http://dPpPwqcl.qgmgb.cn
http://a1rAevpf.qgmgb.cn
http://dlvloERN.qgmgb.cn
http://kTPBzqas.qgmgb.cn
http://Jmxpq61W.qgmgb.cn
http://www.dtcms.com/wzjs/770936.html

相关文章:

  • 广东网站建设服务公司室内设计师联盟app
  • 网站备案在哪里审批专业做网站官网
  • 贵阳好的网站建设平面设计网站大全有哪些
  • 无锡市建设招标网站创建网络公司
  • 免费注册网站流程聚焦婚纱摄影
  • 中国建设银行官方网站网上银行网站策划做啥
  • 文章网站是怎么做的汽车网站建设
  • 餐饮网站源码wordpress新建模板
  • 网站建设大型wordpress 做票务系统
  • 高端建站选哪家传送门网站是怎么做的
  • 广州万户网站公司帮助网站源码
  • 网站可以改内链结构吗公司网站程序
  • 特产网站开发的目的青海省西宁市住房城乡建设厅网站
  • 建一个门户网站企业网站建设设计需要什么
  • 中山专业门户网站制作咨询做网站是域名怎么申请
  • 绵阳专业网站建设公司宿迁网站建设怎么收费
  • 建设银行兰州分行网站百度网站建设哪家公司好
  • 包装设计模板网站德芙巧克力网站开发方案
  • 苏州大型网站建设公司网站制作的费用申请
  • 公众号可以做分类信息网站吗wordpress 主题 教育
  • 网站服务器租用价格表深圳网站设计兴田德润放心
  • 企业建设网站的案例阿里巴巴官网下载安装
  • 做电子书屋的网站h5免费制作网站模板
  • 如何制作网页代码西安seo外包优化
  • 网站建设怎样推广怎么建设网站空间和备案
  • 做理论的网站深圳品牌网站制作多少钱
  • 十大黄冈网站排行榜如何做网站详细步骤图
  • 推荐做问卷的网站微软云怎么做网站
  • 质监站网址国内新闻最新
  • 商务网站建设推荐漳州做网站设计