Spring应用(一)Spring入门基础

 一、Spring概述

1.1 Spring特点

Spring是一个开源框架,为企业应用程序开发的复杂性提供一种轻量级解决方案。它主要提供:基于控制反转(Inversion of ControlIoC)的轻量级容器、面向切面编程(Aspect-oriented programmingAOP)支持、优秀的Web MVC框架、多种持久层技术的整合、多种Web MVC框架的整合等,是目前轻量级JavaEE企业应用的首选框架。

       1.2 Spring模块
 

Spring应用(一)Spring入门基础_第1张图片

1-1

              Spring框架有7个模块组成(如图1-1):

核心容器:提供了基础功能。包含BeanFactory(Spring 框架的核心,采用工厂模式实现)

应用上下文模块:扩展了BeanFactory类,添加了对i18N(国际化)、系统生命周期事件及验证的支持,并提供许多企业级服务,如电子邮件服务、JNDI访问、EJB集成、远程调用及定式服务,并支持与模板框架的集成

AOP模块:对面向切面提供了丰富的支持,是Spring应用系统开发面向切面的基础;并引入metadata编程

JDBCDAO模块

O/R映射模块

Web模块:建立在应用上下文模块的基础上,提供了适合Web系统的上下文,另外,该模块支持多项面向Web的任务,如透明处理多文件上传请求,自动将请求参数绑定到业务对象中等

MVC框架

二、搭建Spring应用开发环境

2.1 Spring的下载和安装

       Spring当前GA版本是3.0.5,登录到http://www.springsource.org/站点,单击Powloads链接进入download页面。然后单击Download链接,逐步进入真正的下载页面。

       建议下载spring-framework-3.0.5-with-dependencies.zip包,这个压缩中不仅含Spring自身的所有应用包,还含有Spring编译和运行所依赖的第三方类库以及第三方开源框架的应用包。

       在应用程序中使用Spring时,需要将spring.jar添加到项目的类路径中,另外还需要添加日志处理包commons-logging.jar以及它的实现包log4j-1.2.15jar(还需要添加他的配置文件log4j.properties)。至于其他的第三方类库,可以在具体需要使用时再加入。

2.2 添加Spring配置文件

       一般来说,使用Spring时会在项目的类路径(CLASSPATH)中添加Spring配置文件来声明Spring要管理的内容。通常把这个文件取名为applicationContext.xml,它的内容大致为如下所示的代码片段。

<?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">
			<!--配置由Spring来管理的Bean-->
		<bean id="gdi" class="cn.csdn.dao.GenericDaoImpl">
			<property name="say" value="O(∩_∩)O哈哈~"></property>
		</bean>
</beans>

            经过以上两个步骤,一个Spring的应用程序基本就搭建好。它的目录结构如图2-1所示。

Spring应用(一)Spring入门基础_第2张图片

下面我们来看一个简单的Spring应用程序案例。

三、Spring简单示例

程序清单3.1 SpringService接口将实现从接口中分离出来

package cn.csdn.spring;
public interface SpringService {
		public void display();
} 

程序清单1.2 SpringServiceImpl.java将负责打印问候语

package cn.csdn.spring;
public class SpringServiceImpl implements SpringService {
	private String say;
	public SpringServiceImpl() {
		// TODO Auto-generated constructor stub
	}
	public void setSay(String say) {
		this.say = say;
	}
	@Override
	public void display() {
		// TODO Auto-generated method stub
		System.out.println("J2EE Spring:" + say);
	}
}

程序清单1.3 Spring中配置

applicationContext.xml

<?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">
	<bean id="ssi" class="cn.csdn.spring.SpringServiceImpl">
		<property name="say" value="O(∩_∩)O哈哈~"></property>
	</bean>
</beans>

程序清单1.4 使用JUnit进行测试

package cn.spring.test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import cn.csdn.spring.SpringServiceImpl;
public class SpringTest {
	@Test
	public void test() {
		ApplicationContext ac = new ClassPathXmlApplicationContext(
				"applicationContext.xml");
		SpringServiceImpl ssi = (SpringServiceImpl) ac.getBean("ssi");
		ssi.display();
	}
}

 

 

你可能感兴趣的:(spring,框架,bean,mvc,企业应用)