1:Spring工程搭建
创建项目
使用IDEA创建Maven工程
IDEA配置Maven
我们新建Maven项目名为“spring-demo“,设置好Maven版本、配置文件以及Maven仓库
搭建配置Spring
引入依赖
maven仓库查询网址:MavenRepository
spring基础包:
spring-core:Core模块主要包含Spring框架基本的核心工具类,Spring的其他组件要都要使用到这个包里的类,Core模块是其他组件的基本核心
spring-beans:包含访问配置文件、创建和管理bean以及进行IOC/DI操作相关的所有类
spring-context:Spring的上下文即IOC容器,通过上下文可以获得容器中的Bean
spring-expression:EL表达式语言用于在运行时查询和操纵对象
刷新maven等待自动下载
libraries中有了所有导入的包表示依赖引入完成
核心配置文件
框架是一个半成品,已经封装好了很多功能提供我们使用,而我们如何让他们工作呢?
这里需要创建一个配置文件和Spirng框架通信,文件路径为\src\main\resources文件名为applicationContext.xml
2:编写代码测试
接口类
新建接口类
编写接口类
3:执行过程分析
BeanFactory
BeanFactory是基础类型的IOC容器,是管理bean容器的根接口,并提供了完整的IOC服务支持
简单来说BeanFactory就是一个管理Bean的工厂,它主要负责初始化各种Bean、调用生命周期等方法
ApplicationContext
ApplicationContext被称为应用上下文,是BeanFactory接口的子接口,在其基础上提供了其他的附加功能,扩展了BeanFactory接口
ClassPathXmlApplicationContext
ClassPathXmlApplicationContext是ApplicationContext的实现类,也在其基础上加了许多附加功能
该类从类路径ClassPath中寻找指定的XML配置文件,找到并完成对象实例化工作
refresh方法的作用:
准备容器刷新
准备bean工厂对象
加载配置文件中的所有bean标签
完成bean工厂实例化
完成容器刷新
context.getBean()
context.getBean()方法是通过配置文件中声明的bean标签id属性获取容器内的实例