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

【Spring】IoC容器的一些总结与补充

文章目录

  • 1. 创建容器的两种方式
    • 相对路径导入
    • 绝对路径导入
  • 2. 获取Bean的三种方式
    • getBean后强转类型
    • getBean内写明类别
    • 根据类别获取bean
  • 3. 容器层次结构
  • 4. BeanFactory
  • 5. bean的总结
  • 6. 注入的总结

1. 创建容器的两种方式

相对路径导入

ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");

绝对路径导入

ApplicationContext ctx = new FileSystemXmlApplicationContext("E:\\Code\\Java\\SpringStudy\\project1\\src\\main\\resources\\applicationContext.xml");

2. 获取Bean的三种方式

getBean后强转类型

BookDao bookDao = (BookDao) ctx.getBean("bookDao");

getBean内写明类别

BookDao bookDao = ctx.getBean("bookDao", BookDao.class);

根据类别获取bean

BookDao bookDao = ctx.getBean(BookDao.class);

3. 容器层次结构

在这里插入图片描述

4. BeanFactory

最古早的Bean创建

Resource resource = new ClassPathResource("applicationContext.xml");
BeanFactory bf = new XmlBeanFactory(resource);
BookDao bookDao = bf.getBean(BookDao.class);
bookDao.save();

BeanFactory与我们现在ApplicationContext的区别在于:
BeanFactory是延迟加载bean,ApplicationContext是立即加载bean
即前者在没有getBean的时候是不会提前执行类的构造方法的,而Application就算没有getBean也会执行构造方法
如果想在ApplicationContext上实现延迟加载bean,只需要加参数:lazy-init="true"

<bean id="bookDao" class="com.example.project1.dao.impl.BookDaoImpl" lazy-init="true"/>

5. bean的总结

在这里插入图片描述

6. 注入的总结

在这里插入图片描述

相关文章:

  • 飞腾ARM UOS编译Qt 5.15.2源码及Qt Creator
  • spark与scala的对应版本查看
  • 【机器学习】决策树算法理论:算法原理、信息熵、信息增益、预剪枝、后剪枝、算法选择
  • Matlab自学笔记二十四:字符串的关系运算和比较
  • 软件测试面试-如何定位线上出现bug
  • C++ 多线程使用
  • Java学习之路 —— IO、特殊文件
  • SpringBoot请求参数与响应返回值,ResponseEntity<T>自定义响应
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • Postman+Newman+Jenkins实现接口测试持续集成
  • C#中.NET 7.0 Windows窗体应用通过EF访问新建数据库
  • Java NIO 详解
  • 蓝牙耳机仓设计的单芯片解决方案
  • C++中tuple数据结构使用
  • 编译中的 CMP0148 警告
  • 基于STC12C5A60S2系列1T 8051单片机的数模芯片DAC0832实现数模转换应用
  • Python---函数的作用,定义,使用步骤(调用步骤)
  • 《C++避坑神器·二十二》VS能正常运行程序,但运行exe程序无响应解决办法
  • Spring条件注解@Conditoinal+ Profile环境切换应用@Profile
  • SQL之开窗函数
  • 中国人民银行等四部门联合召开科技金融工作交流推进会
  • “养胃骗局”大公开,真正有用的方法究竟是?
  • 小耳朵等来了春天:公益义诊筛查专家走进安徽安庆
  • 从能源装备向应急装备蓝海拓展,川润股份发布智能综合防灾应急仓
  • 浙能集团原董事长童亚辉被查,还是杭州市书法家协会主席
  • 王毅谈中拉命运共同体建设“五大工程”及落实举措