`
fuzao
  • 浏览: 17405 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

1:第一个spring

阅读更多
     终于开始学习spring,对这个必须要掌握的框架,给自己提的要求是:能深入的理解实现原理和思想.
     白天忙碌的工作,不定时的加班,陪女朋友等等,总不能成为偷懒的理由,狠狠心,开始干.如果永远没有开始,就永远没有成功.
     Spring的学习我使用的<spring2.0技术手册>,我觉得只看例子,容易眼高手低,还是自己敲一敲,能发现很多问题.

环境:myeclipse6+jdk6

1:new一个web project
2:项目中add spring2.0 core libraries
3:src下新建test包
4:test package下 新建一个HelloWord.java类(HelloWorld影响深入骨髓了...不自觉的就命名了)
   代码如下:
package test;

public class HelloWorld {

	private String hellobean;

	public String getHellobean() {
		return hellobean;
	}

	public void setHellobean(String hellobean) {
		this.hellobean = hellobean;
	}  
	
}


简单的一个bean类,一个字符串及get()/set()方法
5:src下新建beans-config.xml bean所对应的xml文件
<?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="hellobean"
		class="test.HelloWorld">
		<property name="hellobean">
		 <value>hello!</value>
		</property>
	</bean>
</beans>


注意:<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"   "http://www.springframework.org/dtd/spring-beans.dtd">
一定要有,否则报错:canot find the declearation of element 'bean'.


6:test包下新建SpringDemo.java类
package test;

import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;

public class SpringDemo {

	public static void main(String args[]){
		Resource rs = new ClassPathResource("beans-config.xml");
		BeanFactory factory = new XmlBeanFactory(rs);
		HelloWorld hello = (HelloWorld) factory.getBean("hellobean");
		System.out.print(hello.getHellobean());
	}
}



7:新建log4j.properties,位置在src下
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n 

8:运行SpringDemo.java,成功输出beans-config.xml中定义的value
9:总结:
需要理解和记忆
ClassPathResource指定了bean定义文件(beans-config.xml)的路径
XmlBeanFactory用来读取(beans-config.xml)和建立BeanFactory实例,BeanFactory为spring的IoC容器.(spring特性:IoC控制反转的实现,依赖关系转移)
spring1.2以后,XmlBeanFactory只接受实现Resource接口的对象
HelloWorld中预留了set方法,通过BeanFactory,将value注入,(spring特性:依赖注入 DI)
通过BeanFactory的getBean()方法获得bean对象(HelloWorld中的hellobean)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics