一 Spring简介
1 什么是Spring
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。
2 spring的优点
(1)方便解耦,简化开发 (高内聚低耦合)
Spring就是一个大的容器,负责JavaBean对象的管理,降低了类与类之间的耦合,便于管理。
(2)AOP编程的支持
Spring的最为重要的两大模块之一,Spring对动态代理技术有着良好的支持,aop,aspectj等包对advice提供了十分友好的帮助。
(3)声明式事务的支持
只需要通过配置就可以完成对事务的管理,而无需手动编程。
(4)方便程序的测试
Spring对Junit4支持,可以通过注解方便的测试Spring程序
(5)方便集成各种优秀框架
Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:Struts、Hibernate、MyBatis、Quartz等)的直接支持
(6)降低JavaEE API的使用难度
Spring 对JavaEE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低。
3 Spring的结构
常用模块的介绍以及jar包
Test:对应spring-test.jar,是spring提供的一个单元测试工具
Core:对应spring-core.jar,用于存放spring的一些核心类库
Beans:对应spring-beans.jar,用于实现IoC生成控制对象,达到解耦
Context:对应spring-context.jar,用于外部链接以及注解等使用
SpEl:对应spring-expression.jar,用于
AOP:对应spring-aop.jar,用于spring面向切面编程
Aspects(切面):对应spring-aspects.jar,用于spring的面向切面编程
JDBC:对应spring-jdbc.jar,用于Spring的JDBC操作。
Trasactions:对应spring-tx.jar,用于Spring的声明式事务操作
二 Spring的安装配置
1.简介
Spring本身的功能由jar包提供,我们需要做的是合理安装jar包,并且按照规范配置Spring的配置文件即可使用。
2.jar包安装
Spring本身由极其多的组件整合完成,这些组件针对不同的模块提供了良好的支持,但是我们并非需要在每次使用Spring时都需要将所有jar包导入才能完成Spring的搭建。对于基本使用我们只需要安装好Core Container中的四个核心包,然后准备好Junit和log4j这些依赖包就好。当我们需要其他功能时,就可以按照需要的功能添加相应的包
3 配置文件的编写
(1)Spring本身需要在Java程序中使用流的形式将配置文件读取进入,所以需要在Java手动添加地址,所以配置文件是一个不固定名字,不固定位置的XML配置文件即可,但是建议直接使用applicationContext.xml命名,因为ApplicationContext是Spring的操作类,便于记忆。
(2)xsd类型,是指XML结构定义 ( XML Schemas Definition ),XSD是DTD替代者的原因,一是据将来的条件可扩展,二是比DTD丰富和有用,三是用XML书写,四是支持数据类型,五是支持命名空间。这与Mybatis
不同。无论是DTD还是XSD都给XML解析器提供了解析需要的语法结构,以及给程序员提供了补全,验证等功能。
(3)最简单的配置文件,所有的配置都在beans内部完成
<?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.xsd" > </beans>
(4)当我们需要完成其他功能时则去官方文档查询相应的xmlns设置以及xsd地址就行。
(5)一个简单的bean对象创建
4 在Java程序中获得Spring的对象,并完成对象创建
(1)配置配置文件地址创建一个ApplicationContext对象,并通过该对象的getBean方法来获得我们在Spring中编写的对象
(2)第一个参数为配置文件中的id值,第二个参数则是该对象对应的类的Class对象,第二个参数可不写,如果不写则返回Object对象,需要强转。