本例子摘自于《轻量级Java EE 企业应用实战(第三版) --Struts2 + Spring 3 + Hibernate》
准备:
eclipse开发环境、spring-framework-3.0.5.CI-834-dependencies、com.springsource.org.apache.commons.logging-1.1.1.jar
(其中eclipse可在 http://www.eclipse.org/downloads/ 下载、spring文件可从 http://www.springsource.org/download/community 下载、jar文件可从书中的光盘提供)
- 打开eclipse、创建Java项目
New-->Java project-->输入项目名-->Finish
2.
引入相应的需要的类库
解压spring-framework-3.0.5.CI-834-dependencies 到硬盘的某个目录
导入jar文件到用户库:Window-->Preferences-->Java-->Build Path-->User Libraries-->New...-->输入用户库名(本例子创建两个用户库,分别名为spring和comming-logging)-->Add External JARs...(对于spring用户库,指定前一步骤解压的目录;对于comming-logging指定从附件下载的com.springsource.org.apache.commons.logging-1.1.1.jar)
3. 对应例子项目引入需要的类库
右击例子项目-->Build Path-->Add Libraries..-->选择User Library-->Next-->勾选刚才引入的类库-->Finish
4. 例子项目准备工作完成,一下是代码编写
src目录下分别创建三个包,包名分别为apprun 存放程序启动代码文件wyrhero.app.service 存放POJO接口抽象代码文件wyrhero.app.service.impl 存放实现POJO接口实现代码文件
在wyrhero.app.service包下创建以下代码文件:Axe.java
package wyrhero.app.service; public interface Axe { public String chop(); }
Person.javapackage wyrhero.app.service; public interface Person { public void useAxe(); }
在wyrhero.app.service.impl包下创建以下代码文件:Chinese.javapackage wyrhero.app.service.impl; import wyrhero.app.service.Axe; import wyrhero.app.service.Person; public class Chinese implements Person { private Axe axe; public void setAxe(Axe axe) { this.axe = axe; } public void useAxe() { System.out.println(axe.chop()); } }
StoneAxe.javapackage wyrhero.app.service.impl; import wyrhero.app.service.Axe; public class StoneAxe implements Axe { public String chop() { return "石斧砍柴好慢"; } }
在apprun包下创建启动代码文件:BeanTest.javapackage apprun; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import wyrhero.app.service.Person; public class BeanTest { public static void main(String[] args) throws Exception { ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml"); Person p = ctx.getBean("chinese", Person.class); p.useAxe(); } }
5.对项目进行配置
在项目的src文件中创建一个名为bean.xml的xml文件,输入以下内容:
bean.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- Spring配置文件的根元素,使用spring-beans-3.0.xsd语义约束 --> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="chinese" class="wyrhero.app.service.impl.Chinese"> <property name="axe" ref="stoneAxe" /> </bean> <bean id="stoneAxe" class="wyrhero.app.service.impl.StoneAxe" /> </beans>
6.运行例子
右击项目-->Run As-->Java Application
可以从Console窗口中看到运行结果为:石斧砍柴好慢