Core模块快速入门
搭建配置环境
引入jar包:
本博文主要是core模块的内容,涉及到Spring core的开发jar包有五个:
- commons-logging-1.1.3.jar 日志
- spring-beans-3.2.5.RELEASE.jar bean节点
- spring-context-3.2.5.RELEASE.jar spring上下文节点
- spring-core-3.2.5.RELEASE.jar spring核心功能
- spring-expression-3.2.5.RELEASE.jar spring表达式相关表
我主要使用的是Spring3.2版本…
编写配置文件:
Spring核心的配置文件applicationContext.xml
或者叫bean.xml
那这个配置文件怎么写呢??一般地,我们都知道框架的配置文件都是有约束的…我们可以在spring-framework-3.2.5.RELEASE\docs\spring-framework-reference\htmlsingle\index.html
找到XML配置文件的约束
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> </beans>
我是使用Intellij Idea集成开发工具的,可以选择自带的Spring配置文件,它长的是这样:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
前面在介绍Spring模块的时候已经说了,Core模块是:IOC容器,解决对象创建和之间的依赖关系。
因此Core模块主要是学习如何得到IOC容器,通过IOC容器来创建对象、解决对象之间的依赖关系、IOC细节。
得到Spring容器对象【IOC容器】
Spring容器不单单只有一个,可以归为两种类型
- **Bean工厂,BeanFactory【功能简单】 **
- 应用上下文,ApplicationContext【功能强大,一般我们使用这个】
通过Resource获取BeanFactory
- 加载Spring配置文件
- 通过XmlBeanFactory+配置文件来创建IOC容器
//加载Spring的资源文件 Resource resource = new ClassPathResource("applicationContext.xml"); //创建IOC容器对象【IOC容器=工厂类+applicationContext.xml】 BeanFactory beanFactory = new XmlBeanFactory(resource);
类路径下XML获取ApplicationContext
- 直接通过ClassPathXmlApplicationContext对象来获取
// 得到IOC容器对象 ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); System.out.println(ac);
在Spring中总体来看可以通过三种方式来配置对象:
- 使用XML文件配置
- 使用注解来配置
- 使用JavaConfig来配置
XML配置方式
在上面我们已经可以得到IOC容器对象了。接下来就是在applicationContext.xml文件中配置信息【让IOC容器根据applicationContext.xml文件来创建对象】
- 首先我们先有个JavaBean的类
/** * Created by ozc on 2017/5/10. */ public class User { private String id; private String username; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } }
- 以前我们是通过new User的方法创建对象的….
User user = new User();
- 现在我们有了IOC容器,可以让IOC容器帮我们创建对象了。在applicationContext.xml文件中配置对应的信息就行了
<!-- 使用bean节点来创建对象 id属性标识着对象 name属性代表着要创建对象的类全名 --> <bean id="user" class="User"/>
通过IOC容器对象获取对象:
- 在外界通过IOC容器对象得到User对象
上面我们使用的是IOC通过无参构造函数来创建对象,我们来回顾一下一般有几种创建对象的方式:
- 无参构造函数创建对象
- 带参数的构造函数创建对象
- 工厂创建对象
- 静态方法创建对象
- 非静态方法创建对象
使用无参的构造函数创建对象我们已经会了,接下来我们看看使用剩下的IOC容器是怎么创建对象的。