Spring学习笔记(一) 通过Spring控制反转(IOC:Inversion of Control)为对象设置属性

首先在网上下载Spring的JAR包,分别为:spring-framework-3.0.5.RELEASE-with-docs.zip  和  spring-framework-3.0.5.RELEASE-dependencies.rar

第一个解压缩后是spring框架及文档,第二个解压缩后是spring框架的依赖JAR包。

在Eclipse中新建一个JAVA项目,并为该项目添加自己的用户库,如果还不知到如何建立自己的用户库,参考创建自己的用户库

我创建2个用户库,spring3.0.5和common-logging,其中spring3.0.5里面的JAR包是spring-framework-3.0.5.RELEASE-with-docs.zip解压缩后dist文件夹,

common-logging里面的JAR包是我自己在网上下载的com.springsource.org.apache.commons.logging-1.1.1.jar,导入完成后项目目录如图:


新建PersonService.java类,代码如下:

package myspring;

public class PersonService {
	private String name;
	public void setName(String name){
		this.name = name;
	}
	
	public void info(){
		System.out.println("此人名为"+name);
	}
}

新建applicationContext.xml配置文件(注意:要在src目录下新建,否则会找不到xml文件),将 PersonService类部署在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.5.xsd">

	<!-- 将Person类部署成Spring容器中的Bean  -->
	<bean id="person" class="myspring.PersonService">
		<property name="name" value="wawa"/>
	</bean>

</beans>

编写SpringTest.java类进行测试,代码如下:

package myspring;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;



public class SpringTest {
	public static void main(String[] args){
		//创建Spring的ApplicationContext
		ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
		//输出Spring容器
				System.out.println(ctx);
				PersonService p = (PersonService)ctx.getBean("person");
				p.info();
	}
}

运行结果如下:

org.springframework.context.support.ClassPathXmlApplicationContext@1858aa0: startup date [Tue Oct 13 15:56:37 CST 2015]; root of context hierarchy
此人名为:wawa


可以看出,输出类Spring的applicationContext实例和PersonService实例。上面代码并不是直接创建Person实例,

而是通过Spring容器获取PersonService的nane的属性值。Spring容器根据配置文件信息,负责创建PersonService实例,

并为PersonService实例设置属性值,这种由Spring容器为对象设置属性的方式称作控制反转(Inversion of Control,IoC)



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值