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

网站的开发与维护经营范围网站建设

网站的开发与维护,经营范围网站建设,企业网站官网建设,wordpress最新版爆破谈到Spring#xff0c;那势必要讲讲容器 BeanFactory 和 ApplicationContext。 BeanFactory是什么#xff1f; BeanFactory#xff0c;其实就是 Spring 容器#xff0c;用于管理和操作 Spring 容器中的 Bean。可能此时又有初学的小伙伴会问#xff1a;Bean 是什么#x…        谈到Spring那势必要讲讲容器 BeanFactory 和 ApplicationContext。 BeanFactory是什么 BeanFactory其实就是 Spring 容器用于管理和操作 Spring 容器中的 Bean。可能此时又有初学的小伙伴会问Bean 是什么其实这就是对象只不过这个对象是被 Spring Ioc 容器管理的。 BeanFactory 的主要功能 1. 创建 Bean BeanFactory 负责创建和管理 Bean 的生命周期。简单来说它就像是一个工厂负责生产创建各种对象Bean。这些对象在创建时BeanFactory 会根据配置文件如 XML 文件中的定义初始化这些对象的属性和行为。 2. 依赖注入 BeanFactory 通过依赖注入DI机制将依赖关系注入到 Bean 中。想象一下一个对象Bean需要使用另一个对象依赖来完成某些任务。BeanFactory 会自动将这些依赖对象注入到需要它们的 Bean 中这样你就不需要在代码中手动创建这些依赖对象使得代码更加简洁和易于维护。 3. 获取 Bean BeanFactory 提供了方法来获取 Bean 实例。当你需要使用某个 Bean 时你可以通过 BeanFactory 提供的方法如 getBean来获取这个 Bean 的实例。这个过程就像是从工厂中取出一个已经生产好的产品一样简单。 下面举一个例子通过 BeanFactory 获取所有的单例 Bean。 SpringBootApplication public class Application {public static void main(String[] args) {// 启动 Spring 应用ConfigurableApplicationContext context SpringApplication.run(Application.class, args);// 通过反射获取 DefaultSingletonBeanRegistry 类中的 singletonObjects 字段Field singletonObjectsField;try {singletonObjectsField DefaultSingletonBeanRegistry.class.getDeclaredField(singletonObjects);singletonObjectsField.setAccessible(true);// 获取当前 Spring 容器的 BeanFactoryConfigurableListableBeanFactory beanFactory context.getBeanFactory();// 通过反射获取 singletonObjects 字段的值MapString, Object singletonObjects (MapString, Object) singletonObjectsField.get(beanFactory);// 打印所有单例 BeansingletonObjects.forEach((beanName, beanInstance) - {System.out.println(beanName : beanInstance.getClass().getName());});} catch (NoSuchFieldException | IllegalAccessException e) {e.printStackTrace();}// 关闭 Spring 容器context.close();} } 另外需要自己提前创建好 bean。方法有很多简便点直接加类上加 Component 即可这使得该类可以被 Spring 容器自动检测并注册为一个 Bean。如下所示 Component public class MyComponent {public void doSomething() {System.out.println(Doing something...);} } 那它与 ApplicationContext 有什么区别 可以从图中看出ApplicationContext 可以说是更高级的容器它继承并扩展了 BeanFactory 的功能提供了更多的功能。具体来说ApplicationContext 多继承了以下几个接口 MessageSource提供国际化消息支持可以用于多语言应用。 EnvironmentCapable提供环境变量的访问功能可以获取系统环境变量和配置文件中的属性。 ResourcePatternResolver提供资源路径解析功能可以方便地加载资源文件。 ApplicationEventPublisher提供事件发布功能可以发布和监听应用事件。 总结 BeanFactory是最基本的 Spring 容器接口提供 Bean 的创建、配置和组装功能。适用于资源受限的环境启动速度快。 ApplicationContext是 BeanFactory 的子接口提供了更多的高级功能如事件传播、国际化消息支持、资源访问等。适用于大多数企业级应用启动时会自动初始化所有单例 Bean提供更多的功能和便利性。
http://www.hkea.cn/news/14428956/

相关文章:

  • 沙田镇网站建设福州 哈尔滨网站建设 网络服务
  • 网站建设外包招商加盟项目推荐
  • 珠海建网站公司做网站域名后缀选择
  • 免费摄影网站wordpress小工具制作
  • 网站建设发生的成本如何记账wordpress 视频 批量
  • 做网站网站建设教程一流的常州网站建设
  • 淘宝客做的好的几个网站えっちな秘密基地视频
  • 荆州网站推广怎么做免费php网站模板下载
  • 网上购物商城网站建设毕业设计嘉兴做网站设计
  • 网页制作实训内容网站seo监测
  • 东胜做网站百度快照举报网站
  • 面试网站建设的问题定制网站需要多少钱
  • 义乌做公司网站东莞网站优化中易
  • 湖南网站制作哪家专业西安专业网站建设公司哪家好
  • 房地产公司网站源码图片上传分享平台
  • 网站开发的意义和作用该企业为暂停开票企业解决方案
  • 网站设计的优缺点湖北城乡和建设官方网站
  • 开封景区网站建设方案北京平台网站建设
  • 儿童网站开发 论文现在做网站用的软件
  • 重庆镇海seo整站优化价格长沙室内设计学校
  • 可以免费打广告的网站中国建设银行信用卡网站
  • 做流量网站要做哪一种Wordpress必备chaj
  • 雄安免费网站建设wordpress做h5
  • 环保行业网站怎么做公司官网设计制作
  • 外贸网站建站费用北京做网站要多少钱
  • 周口网站设计制作自己可以学做网站吗
  • 网络优化首先要有网站长沙网站建设kaodezhu
  • 用手机做网站视频我在学校志愿队做网站的经历
  • 网站建设哪家有实力嘉兴类网站系统总部
  • 网站编辑应该怎么做西安做网站陕西必达