参照:http://www.yiibai.com/spring/spring-tutorial-for-beginners.html
示例代码下载:http://download.csdn.net/detail/u010476739/9921767
本文讲解:在maven构建的普通jar工程下,使用xml配置方式启动spring容器实现简单bean的装配
1.工具
maven
spring framwork 4.2.4.RELEASE
2.使用eclipse创建maven工程
新建工程:
选择maven工程:
创建工程后如下:
2:引入spring framework
使用pom文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.jackletter</groupId>
<artifactId>hellospring</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>this is name</name>
<description>this is desc</description>
<properties>
<spring.version>4.2.4.RELEASE</spring.version>
</properties>
<dependencies>
<!-- Spring Core -->
<!-- http://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring Context -->
<!-- http://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
</project>
3.java代码
HelloProgram
package hellospring;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import hellospring.service.HelloWorld;
import hellospring.service.HelloWorldService;
public class HelloProgram {
public static void main(String[] args) {
@SuppressWarnings("resource")
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
HelloWorldService service = (HelloWorldService) context.getBean("helloWorldService");
HelloWorld hw = service.getHelloWorld();
hw.sayHello();
}
}
HelloWorld
package hellospring.service;
public interface HelloWorld {
public void sayHello();
}
HelloWorldService
package hellospring.service;
public class HelloWorldService {
private HelloWorld helloWorld;
public HelloWorldService() {
}
public void setHelloWorld(HelloWorld helloWorld) {
this.helloWorld = helloWorld;
}
public HelloWorld getHelloWorld() {
return this.helloWorld;
}
}
StrutsHelloWorld
package hellospring.service.impl;
import hellospring.service.HelloWorld;
public class StrutsHelloWorld implements HelloWorld {
@Override
public void sayHello() {
System.out.println("Struts Say Hello!!");
}
}
SpringHelloWorld
package hellospring.service.impl;
import hellospring.service.HelloWorld;
public class SpringHelloWorld implements HelloWorld {
@Override
public void sayHello() {
System.out.println("Spring Say Hello!!");
}
}
4.配置文件beans.xml (hellospring\src\main\resources\beans.xml)
<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 id="springHelloWorld"
class="hellospring.service.impl.SpringHelloWorld"></bean>
<bean id="strutsHelloWorld"
class="hellospring.service.impl.StrutsHelloWorld"></bean>
<bean id="helloWorldService"
class="hellospring.service.HelloWorldService">
<property name="helloWorld" ref="springHelloWorld" />
</bean>
</beans>
5.运行