步骤一:下载Spring框架的开发包
官网:http://spring.io/
*下载地址:http://repo.springsource.org/libs-release-local/org/springframework/spring解压:(Spring目录结构:)
* docs – API和开发规范
* libs – jar包和源码
* schema – 约束
步骤二:创建JavaWEB项目,引入Spring的开发包
* 引入Spring框架IOC核心功能需要的具体的jar包
需要引入如下的jar
spring-beans-4.2.4.RELEASE.jar
spring-context-4.2.4.RELEASE.jar
spring-core-4.2.4.RELEASE.jar
spring-expression-4.2.4.RELEASE.jar
Spring框架也需要引入日志相关的jar包
* 在spring-framework-3.0.2.RELEASE-dependencies/org.apache.commons/com.springsource.org.apache.commons.logging/1.1.1
* com.springsource.org.apache.commons.logging-1.1.1.jar
* 还需要引入log4j的jar包 spring-framework-3.0.2.RELEASE-dependencies\org.apache.log4j\com.springsource.org.apache.log4j\1.2.15
* com.springsource.org.apache.log4j-1.2.15.jar
步骤三:创建对应的包结构,编写Java的类,要注意:以后使用Spring框架做开发,都需要来编写接口与实现类!!
接口类
package com.itheima.demo1;
public interface UserService {
public void sayHello();
}
具体的实现类
package com.itheima.demo1;
public class UserServiceImp implements UserService {
@Override
public void sayHello() {
System.out.println("Hello say");
}
}
步骤四:想把UserServiceImpl实现类的创建交给Spring框架来管理,需要创建Spring框架的配置文件,完成配置
* 在src目录下创建applicationContext.xml的配置文件,名称是可以任意的,但是一般都会使用默认名称!!
*
<?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">
<!-- 使用bean标签 -->
<bean id="userService" class="com.itheima.demo1.UserServiceImp"></bean>
</beans>
步骤五:编写测试程序,采用Spring框架的工厂方式来获取到UserService接口的具体实现类!!
package com.itheima.demo1;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Demo1 {
/**
* 使用接口的方式
*/
@Test
public void run2() {
//创建工厂,加载核心配置文件
ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
//从工厂中获取到对象
UserService usi = (UserService) ac.getBean("userService");
//调用对象的方法执行
usi.sayHello();
}
}
入门总结之Spring框架中的工
-
ApplicationContext接口
- 使用ApplicationContext工厂的接口,使用该接口可以获取到具体的Bean对象
- 该接口下有两个具体的实现类
- ClassPathXmlApplicationContext – 加载类路径下的Spring配置文件
- FileSystemXmlApplicationContext – 加载本地磁盘下的Spring配置文件
-
BeanFactory工厂(是Spring框架早期的创建Bean对象的工厂接口)
-
使用BeanFactory接口也可以获取到Bean对象
public void run(){
BeanFactory factory = new XmlBeanFactory(new ClassPathResource(“applicationContext.xml”));
UserService us = (UserService) factory.getBean(“us”);
us.sayHello();
} -
BeanFactory和ApplicationContext的区别
- BeanFactory – BeanFactory采取延迟加载,第一次getBean时才会初始化Bean
- ApplicationContext – 在加载applicationContext.xml时候就会创建具体的Bean对象的实例,还提供了一些其他的功能
- 事件传递
- Bean自动装配
- 各种不同应用层的Context实现/
-