Spring---搭建开发环境和第一个简单实例

本文介绍了一个简单的Spring框架搭建过程及其实例。通过实例演示了如何使用Spring进行依赖注入,包括配置文件的设置、接口和实现类的定义以及通过Spring实例化对象。

Spring Hello World 实例

http://blog.youkuaiyun.com/autumn20080101/article/details/50623265

Spring---搭建开发环境和第一个简单实例

Spring是一个类的容器实例化托管框架,可以实现对实现类的实例化进行动态的托管。更可以实现控制反转。控制

转就是应用本身不负责倚赖对象的创建和维护,倚赖对象的创建和维护是通过其他的外部容器负责的,这样的控制

权就由应用转移到了容器。控制权的转移就是所谓的反转。


下面我们来说一下一个简单的Spring框架的搭建和实例.首先下载下来spring的压缩包,在解压后的dist文件夹下

有spring.jar和commons-logging.jar这两个JAR包,这就是实现最简单的spring框架所必须的包,然后就是

docs/reference下面的参考手册,里面又spring的配置文件写法。导入包完成后,最好在src目录下面建立beans.xml配

转就是应用本身不负责倚赖对象的创建和维护,倚赖对象的创建和维护是通过其他的外部容器负责的,这样的控制权

由应用转移到了容器。控制权的转移就是所谓的反转。

下面我们来说一下一个简单的Spring框架的搭建和实例.首先下载下来spring的压缩包,在解压后的dist文件夹下

有spring.jar和commons-logging.jar这两个JAR包,这就是实现最简单的spring框架所必须的包,然后就是

docs/reference下面的参考手册,里面又spring的配置文件写法。导入包完成后,最好在src目录下面建立beans.xml

配置文件,这个名字是不限制的。

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.        xsi:schemaLocation="http://www.springframework.org/schema/beans  
  5.            http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  
  6.       
  7.     <bean id="personService" class="com.bird.service.impl.PersonServerImpl"></bean>  
  8. </beans>  

然后写一个类和抽取出接口

  1. package com.bird.service;  
  2.   
  3. public interface PersonServer {  
  4.   
  5.     void save();  
  6.   
  7. }  
  8.   
  9. package com.bird.service.impl;  
  10.   
  11. import com.bird.service.PersonServer;  
  12.   
  13. public class PersonServerImpl implements PersonServer {  
  14.       
  15.     @Override  
  16.     public void save(){  
  17.         System.out.println("save()方法调用");  
  18.     }  
  19. }     
然后在beans.xml中配置这个类就可以使用spring实例化这个类了,下面的操作全部都是面向接口的编程了。

  1. package junit.test;  
  2.   
  3. import org.junit.Test;  
  4. import org.springframework.context.ApplicationContext;  
  5. import org.springframework.context.support.ClassPathXmlApplicationContext;  
  6.   
  7. import com.bird.service.PersonServer;  
  8.   
  9. public class SpringTest {  
  10.       
  11.     @Test  
  12.     public void test(){  
  13.         ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");  
  14.         PersonServer s = (PersonServer)ctx.getBean("personService");  
  15.         s.save();  
  16.     }                                                                                                                                                                                                                                                                
  17. }  

运行结果如下

  1. 2012-2-20 16:47:15 org.springframework.context.support.AbstractApplicationContext prepareRefresh  
  2. 信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@723d7c: display name [org.springframework.context.support.ClassPathXmlApplicationContext@723d7c]; startup date [Mon Feb 20 16:47:15 CST 2012]; root of context hierarchy  
  3. 2012-2-20 16:47:16 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions  
  4. 信息: Loading XML bean definitions from class path resource [beans.xml]  
  5. 2012-2-20 16:47:17 org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory  
  6. 信息: Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@723d7c]: org.springframework.beans.factory.support.DefaultListableBeanFactory@a4e743  
  7. 2012-2-20 16:47:17 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons  
  8. 信息: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@a4e743: defining beans [personService]; root of factory hierarchy  
  9. save()方法调用  



分类: Spring
1
0
(请您对文章做出评价)
«上一篇: jsp中有关于超链接的问题
»下一篇: java读取文件,中文乱码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值