简介:

1.spring 与unix、window这些操作在计算机系统中起到的作用是类似的

2.两大核心模块:IOC\AOP

3.为应用开发提供了许多现成的系统组件:事务处理、Web MV、JDBC、O/R映射、远程调用等,这些组件可以在开源软件和商业产品中自由选择,重复体现了Spring的开放性。

第1章:Spring的设计理念和整体构架

1.IOC(依赖反转)可以使原来的对象-对象关系,转化为对象-IOC容器-对象的关系

2.Spring的设计理念:面向接口开发而不依赖于具体的产品实现

3.Spring的构架图:

4.Spring的价值、优点:

  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.

《Spring技术内幕》读书笔记的更多相关文章

  1. csapp读书笔记-并发编程

    这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...

  2. CSAPP 读书笔记 - 2.31练习题

    根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1)  属于第一种情况 sum = x ...

  3. CSAPP读书笔记--第八章 异常控制流

    第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...

  4. CSAPP 并发编程读书笔记

    CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...

  5. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  6. 读书笔记--SQL必知必会18--视图

    读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...

  7. 《C#本质论》读书笔记(18)多线程处理

    .NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...

  8. C#温故知新:《C#图解教程》读书笔记系列

    一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...

  9. C#刨根究底:《你必须知道的.NET》读书笔记系列

    一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...

  10. Web高级征程:《大型网站技术架构》读书笔记系列

    一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...

随机推荐

  1. 小程序:scroll-view组件滑动多次触发scroll事件的bug解决

    在项目开发过程中,组件是微信小程序提供给我们的一个分页器,一般滑动到底部时会触发scroll事件,scroll事件中往往包含对后端数据的请求:若是还未滑动到底部时频繁触发事件,则会频繁发请求,达不到想 ...

  2. python迭代-如何实现反向迭代

    如何实现反向迭代 问题举例 实现一个连续浮点数发生器FloatRange,根据给定范围(start, end)和步进值(step) 产生一系列连续的浮点数,如FloatRange(3.0, 4.0, ...

  3. Xamarin.Forms 未能找到路径“x:\platforms”的一部分

    https://stackoverflow.com/questions/45500269/xamarin-android-common-targets-error-could-not-find-a-p ...

  4. linux ping: unknown host www.baidu.com

    在虚拟机中使用CentOS6.5时,ping www.baidu.com出现报错信息:“ping: unknown hostwww.baidu.com”,虚拟机和物理机网络连接是NAT方式,物理机访问 ...

  5. Unityd外发光Shader Lab

    Shader "Faye/OutLightting" { Properties { _MainTex("Texture (RGB)", 2D) = " ...

  6. AD域详解

    很详细,赞!

  7. 微信不支持App下载的解决方案 微信跳转打开外部浏览器下载(苹果跳转商店下载)

    在微信中,打开app下载链接,或者使用微信扫一扫app下载二维码,都是无法下载app的. 因为腾讯为了自身利益,屏蔽了其他app直接在微信中下载.下面给分享下,找到的2种有效的解决方案. 方案:点击链 ...

  8. python小知识点随笔

    可能会有不局限于Python语言的内容,文中“>>>”表示结果,而不是命令行交互的提示符 1.关于字符串编码 ASCII编码 占用一个字节 二进制11111111=十进制255 所以 ...

  9. 高校表白APP-冲刺第三天

    第三天,我们进行了第三次会议. 一.任务: 昨日任务:完成APP基本的登陆框架. 今日任务:完成登录界面修改界面注册界面,并解决闪退. 明日任务:完成界面跳转,并彻底解决闪退. 二.遇到的困难: 今天 ...

  10. 从centos镜像创建maven仓库

    创建镜像 1. 使用centos7作为基础镜像2. 将jdk1.8(官方要求1.8)和nexus3解压后的两个文件放进cp进去3. export环境变量后启动一下试一试4. docker commit ...