二、spring管理对象的简单例子
Bromon原创 请尊重版权
任何需要交给spring管理的对象,都必须在配置文件中注册,这个过程被称为wiring,下面做一个最简单的Hello world演示,我们将要注册的类如下:
/*
* 创建日期 2005-3-22
*/
package org.bromon.spring.test; /**
* @author Bromon
*/
public class HelloTalker
{
public String greeting()
{
return "hello world";
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id=”helloTalker” class=” org.bromon.spring.test.HelloTalker”>
</bean>
</beans>
/*
* 创建日期 2005-3-17
*/
package org.bromon.spring.test.junit; import java.io.FileInputStream;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.bromon.spring.test;
/**
* @author Bromon
*/
public class TestStudentManager extends TestCase {
public void testHelloTalker()
{
try
{
ApplicationContext context =new ClassPathXmlApplicationContext("springConfig.xml");
HelloTalker ht=(HelloTalker)context.getBean(“helloTalker”);
System.out.println(ht.greeting());
}catch(Exception e)
{
e.printStackTrace();
}
}
}
第一步是修改HelloTalker,增加一个String name属性:
public String name;
为该属性编写set方法,该方法必须严格遵守javabean的命名规则:
public void setName(String name)
{
this.name=name;
}
public String greeting()
{
return "hello "+name;
}
第二步,修改springConfig.xml中唯一的这个bean配置:
<bean id=”helloTalker” class=” org.bromon.spring.test.HelloTalker”>
<property name=”name”>
<value>bromon</value>
</property>
</bean>
我们只演示了如何注入一个最简单的String,实际上我们可以注入任何值类型,也可以注入任何类的实例,也可以注入List、Map、Properties。配置文件管理了所有的对象和对象间的关系,而对象则只负责执行自己的功能,他们的职责越少,藕合度越低,系统就越容易测试,管理维护也更容易。
标签还有很多属性,用于指定对象如何被实例化,它也有很多子标签用于配置对象的属性,请大家参考相关的DTD和文档,能够很快的掌握。本系列文章不是spring手册,spring的基础知识请参考spring in action,足够详细准确。后面的章节更多的讨论系统设计、开发的一些细节和高级特性。