简介:spring
1.spring 与unix、window这些操做在计算机系统中起到的做用是相似的编程
2.两大核心模块:IOC\AOP服务器
3.为应用开发提供了许多现成的系统组件:事务处理、Web MV、JDBC、O/R映射、远程调用等,这些组件能够在开源软件和商业产品中自由选择,重复体现了Spring的开放性。框架
第1章:Spring的设计理念和总体构架工具
1.IOC(依赖反转)能够使原来的对象-对象关系,转化为对象-IOC容器-对象的关系测试
2.Spring的设计理念:面向接口开发而不依赖于具体的产品实现设计
3.Spring的构架图:3d
4.Spring的价值、优势:unix
1)是个非请侵入性框架,应用对框架依赖很小对象
2)Spinrg提供了一致的编程模型,使应用直接使用POJO开发,使之与运行环境(应用服务器)隔离开来
3)Spring推进应用的设计风格向面向对象及面向接口编程转变,提升了代码的重用性和可测试性
4)Spring能够支持多个体系结构的选择,能够切换ORM工具,从struts切换到Spring MVC
第2章 Spring Framework的核心:IoC容器的实现
1. 为何须要依赖反转:为了不由自身实现对象依赖(建立对象的引用),所致使的代码高度耦合。
2.实现方式:在Spring中,是经过IoC容器实现这个模式的
3.什么是IOC:控制反转是关于一个对象如何获取它锁依赖的对象的引用,在这里,反转指的是责任的反转。
4.哪些须要被反转控制:若是对面向对象系统中的对象进行简单分类,会发现除了一部分数据对象外,其它很大一部分对象是用来处理数据的(service、core、DAO)。这些对象并不常发生变化,是系统中基础的部分。同时,这些对象之间的相互依赖关系也比较稳定,适合由IOC容器来管理。
5.和EJB的区别:Spring下降了对J2EE技术规范的依赖,更轻,更简单。
6.经过IOC,能够使组件之间的关系更清晰,更便于管理,发生变化的时候,也不须要修改和编译Java源码,还能够结合OSGi实现热部署
7.Ioc容器的设计与实现:围绕着BeanFactory和ApplicationContent
8.IOC容器的启动过程:BeanDefinition的resouce定位、载入、注册
9.IOC容器初始化和依赖注入是2个独立的过程,依赖注入通常发生在第一次向容器索取Bean的时候
10.spring生成Bean有2种方式:反射、cglib。cgLib框架经过直接操做字节码,效率比较高
11.