Spring中基于XML的IOC环境搭建
- pom.xml中引入Spring依赖
1
2
3
4
5
6
7
8<dependencies>
<!--Spring依赖-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
</dependencies>
2.在resources目录下创建配置文件bean.xml(名称可改变)
3.导入约束 在Spring源码中的 spring-framework-5.0.2.RELEASE/docs/spring-framework-reference/index.html中点击core,然后搜索xmlns,将搜到的约束拷贝。
1 |
|
4、将对象的创建交给Spring管理,在bean.xml中添加如下<bean>
标签
1 | <bean id="accountService" class="io.github.lonelyMrZhang.service.impl.AccountServiceImpl"></bean> |
5、获取Spring的IOC核心容器,并根据id获取对象
1 | package io.github.lonelyMrZhang.ui; |
ApplicationContext 三个常用实现类之间的区别
IDEA
中光标停留在要查看的类上 按下ctrl + h
便可查看该类的所有实现类:
- ClassPathXmlApplicationContext:可以加载类路径下的配置文件,要求配置文件必须在类路径下,不在类路径下加载不了。比较常用。
- FileSystemXmlApplicationContext:可以加载磁盘任意路径下的有权限的配置文件
- AnnotationConfigApplicationContext:读取注解创建文件。
IOC容器构建的两种方式
懒汉模式
通过BeanFactory构建Spring容器时,采用延迟加载的策略创建对象,即:什么时候根据id获取对象,什么时候真正的创建对象。适用多例模式饿汉模式
通过ApplicationContext构建Spring核心容器时,采用立即加载的策略创建对象,即:只要一读取完配置文件马上就要创建配置文件中配置的对象。适用单例模式