Spring框架是一种管理业务对象的框架结构
控制反转IoC,原来由应用程序控制的”对象之间的关系“转交给由外部容器来实现控制。
控制反转用到的重要组件有BeanFactory接口,ApplicationContext接口以及Spring的配置文件
在Myeclipse环境下,新建一个java项目或web项目,添加spring功能(即添加spring所需的jar包)
将自动生成applicationContext.xml配置文件,这是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-2.0.xsd">
</beans>
新建一个简单的JavaBean,
package com.qdu.sun.spring;
public class HelloWorld {
private String greeting;
public HelloWorld(){
}
public void sayGreeting(){
System.out.println(this.greeting);
}
public HelloWorld(String greeting){
this.greeting = greeting;
}
public void setGreeting(String greeting) {
this.greeting = greeting;
}
}
并在spring的配置文件中进行设置,有两种方式传入参数,set方式和构造函数方式
即在原始的配置文件基础上,添加一个bean
<bean id="greetingService" class="com.qdu.sun.spring.HelloWorld"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<!-- set方式传入参数 -->
<property name="greeting">
<value type="java.lang.String">Hello world!</value>
</property>
<!-- 构造函数方式传入参数 -->
<constructor-arg>
<value type="java.lang.String">Hello world!</value>
</constructor-arg>
</bean>
接着进行简单的测试
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import com.qdu.sun.spring.HelloWorld;
public class SpringTest {
public static void main(String[] args) {
BeanFactory factory = new XmlBeanFactory(new ClassPathResource(
"applicationContext.xml")); //读取classpath下的配置文件,无需指定路径
HelloWorld hw = (HelloWorld) factory.getBean("greetingService");
hw.sayGreeting();
}
}
看着很简单吧!!