一、框架:半成品软件

  高度抽取可重用代码的一种设计;高度的通用性;

  书城:WebUtils.java;BaseServlet;Filter…

  打包:bookstore.jar;(工具类)commons-fileupload,commons-io(工具类),commons-dbutils(方便操作数据库的工具)

  框架:抽取成一种高度可重用的;事务控制,强大的servlet,项目中的一些工具。…是多个可重用模块的集合,形成某个领域的整体解决方案;

 

二、Spring

  1、Spring 框架

    ①Spring是一个开源框架

    ②Spring为简化企业级开发而生,使用Spring,JavaBean就可以实现很多以前要靠EJB才能实现的功能。同样的功能,在EJB中要通过繁琐的配置和复杂的代码才能够实现,而在Spring中却非常的优雅和简洁。

    ③Spring是一个IOC(DI)AOP容器框架。

    ④Spring的优良特性

    ① 非侵入式:基于Spring开发的应用中的对象可以不依赖于Spring的API(轻量级,对于原项目没有太大影响)
    ② 依赖注入:DI——Dependency Injection,反转控制(IOC)最经典的实现
    ③ 面向切面编程:Aspect Oriented Programming——AOP
    ④ 容器:Spring是一个容器,因为它包含并且管理应用对象的生命周期
    ⑤ 组件化:Spring实现了使用简单的组件配置组合成一个复杂的应用。在 Spring 中可以使用XML和Java注解组合这些对象。(Spring降低耦合性)
    ⑥  一站式:在IOC和AOP的基础上可以整合各种企业应用的开源框架和优秀的第三方类库(实际上Spring 自身也提供了表述层的SpringMVC和持久层的Spring JDBC)

    容器(可以管理所有的组件(类))框架;

    核心关注:IOCAOP

    Spring(IOC和AOP)

    (I)第一节:Spring 框架_数据库

 

 

    3个一组:source是源码包、jar是jar包、javadoc是文档包 

 

  2、Spring 模块划分图

    (I)第一节:Spring 框架_spring_02

 

 

  (1) Test:Spring的单元测试模块

spring-test-4.0.0.RELEASE

  (2)Core Container:核心容器模块(IOC);黑色代表这部分的模块由哪些jar包组成;要使用这模块的完整功能需要全部导入

spring-beans-4.0.0.RELEASE

spring-core-4.0.0.RELEASE

spring-context-4.0.0.RELEASE

spring-expression-4.0.0.RELEASE

  (3)AOP + Aspects(面向切面编程模块)

spring-aop-4.0.0.RELEASE

spring-aspects-4.0.0.RELEASE

  (4)Data Access/Integration数据访问/集成—访问数据库

spring-jdbc-4.0.0.RELEASE

spring-orm(Object Relation Mapping)-4.0.0.RELEASE

spring-oxm(xml)m-4.0.0.RELEASE

spring-jms-4.0.0.RELEASE

spring-tx-4.0.0.RELEASE(事务)

  (5)Web:Spring开发web应用的模块

spring-websocket-4.0.0.RELEASE

spring-web-4.0.0.RELEASE ------原生web相关(servlet)

spring-webmvc-4.0.0.RELEASE------开发web项目(web)

spring-webmvc-portlet-4.0.0.RELEASE—开发web应用的组件集成

 

    建议:用哪个模块导入哪个包

    Spring 主要关注IOC和 AOP

(I)第一节:Spring 框架_开源框架_03