1 快速入门

2016-08-03 23:18:42 395

1.1 什么是Spring

JavaEE 程序在服务器端被分为三层 Web层【表现层】、业务逻辑层、数据访问层【集成层、持久层】)

 * struts2 是表现层MVC的框架

 * hibernate 是数据访问层(持久层)的完全ORM框架

 Spring框架中包括JavaEE 三层的 每一层的解决方案 (一站式)

      * web  SpringMVC

      * 业务层 Spring Bean管理、AOP、事务管理

                  * 持久层 Spring JDBCTemplate ORM模块(整合其他持久层框架)

l  Spring是分层的JavaSE/EE full-stack (一站式)轻量级开源框架

l  IoCInverse of Control 反转控制)和AOPAspect Oriented Programming 面向切面编程)为内核

l  官网:http://www.springsource.org/

l  sun 公司在最早J2EE规范中,提供业务层解决方案 EJB

l  Spring的出现是为了取代EJB的臃肿、低效、脱离现实

    Expert One-to-One J2EE Design and Development

    Expert One-to-One J2EE Development without EJB

 

l  Spring的由来 作者 Rod Johnson

2002 Expert One-to-One J2EE Design and Development  (分析J2EE开发 使用

技术 EJB

2004 Expert One-to-One J2EE Development without EJB (客观分析J2EE开发需

要什么,推出一个新的框架, 后来的Spring


1.2 应用Spring的好处

l  方便解耦,简化开发

    Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理

l  AOP编程的支持

    Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能

l  声明式事务的支持

    只需要通过配置就可以完成对事务的管理,而无需手动编程

l  方便程序的测试

    SpringJunit4支持,可以通过注解方便的测试Spring程序

l  方便集成各种优秀框架

    Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:StrutsHibernateMyBatisQuartz等)的直接支持

l  降低JavaEE API的使用难度

    Spring JavaEE开发中非常难用的一些APIJDBCJavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低

1.3 Spring体系结构

Spring 框架是一个分层架构,,它包含一系列的功能要素并被分为大约20个模块。这些模块分为Core ContainerData Access/IntegrationWebAOPAspect Oriented Programming)Instrumentation和测试部分,如下图所示:

spring.png