《Spring 3.0就这么简单》 读书笔记
第一章:快速入门
开发流程:
1.创建库表 依赖jar包配置
2.事务:事务是恢复和并发控制的基本单位。
原子性(Atomicity)
一致性(Consistency)
隔离性(Isolation)
持续性/永久性(Durability)
3.散列算法:md5 散列算法:不可逆哦!
摘要是对信息主体的浓缩,摘要是一种单向函数,主要用于将无限的输入值转为有限的浓缩输出值,如MD5,则是将任意长度的字节系列转换为一个128位的摘要。MD5输出的128位的摘要通常会写 出32个十六进制的字符,每个字符表示4个bit。
数据库中存储的是密码的摘要哦,相同的字符串摘要也是相等的哦!
4.图片验证码:防止暴力破解!
5.重难点:请求入参 视图解析
第二章:Spring IOC容器
前言:控制反转:通过容器来控制业务对象之间的依赖关系。 降低对象间依赖。
IOC容器:bean缓存、bean生命周期管理、bean代理、资源装载、事件发布。
1.Bean配置方式:
a:基于xml配置
b:基于注解
c:基于java类
2.BeanFactory
ApplicationContext
WebApplicationContext
3.依赖注入方式: 属性注入、构造函数注入、
第三章:Spring AOP
前言:用途:横切逻辑(性能监测、访问控制、事务管理、日志记录)
1.AOP的出现:为了解决重复性代码。 纵向的重复性代码可以通过继承父类来消除。 但横向的重复性代码无法通过继承父类来消除,所以用AOP。
解决重复性代码:OOP的纵向抽象和AOP的横向抽象。
2.AOP术语
a:Spring连接点(Joinpoint):方法调用前、方法调用后、方法抛出异常时、方法调用前后。
b:切点(Pointcut):用来定位特定的连接点。 切点就是查询条件,查询特定的连接点哦! 类和方法做定位。
c:增强(Advice): 是织入目标连接点(Joinpoint)上的一段程序代码。
d:目标对象(Target):增强所植入的目标类哦。
e:引介:特殊的增强,也是一段程序代码(属性和方法),但不是来处理横切逻辑的,而是让该类成为某接口的实现类。
f: 代理(Proxy)
g:切面(Aspect)由切点和增强组成
3.织入方式:
a:编译期织入
b:类装载织入
c:动态代理织入 (spring采用的方式哦)
4.java漏洞(动态代理,还需好好的看下啊)。
第四章:使用Spring JDBC访问数据库
前言:Spring JDBC,为了降低JDBC的开发难度,减少重复性代码。
1.mysql获取新增主键值的查询语句:SELECT LAST_INSERT_ID()。 最后插入的记录的主键值。
2.sql语句规范:用大小写区分语义和非语义元素是比较好的编码习惯哦。 非语义元素:表名、字段名。
3.存储过程和函数。(数据库的加强点,早就忘了哦)。
4.BLOB和CLOB
5.主键的产生方式:应用层产生和数据库产生。 此何解?
应用层借助数据库的序列或表产生主键,这种方式可以保证程序的可移植性和安全性,同时可以通过缓存机制提高运行效率。
第五章:集成Hibernate
1.分页:
a:客户端分页,将所有数据记录一次性都查过来返回到客户端,缓存在客户端哦,通过客户端展现组件进行分页。
缺点: 但第一次交互负担会很大。 (高并发:访问次数很多的时候,访问次数很大)
优点: 减少交互次数,只需一次! 分页的时候会从缓存中读取。
b: 数据库分页,查询数据,每一次只查询指定条数的记录返回给客户端。 limit 5。
缺点:交互次数高,每一次请求都需要访问数据库,增加访问的并发性。
优点:交互负荷轻,数据量小。
c:服务端分页,和客户端分页一样,也是将所有数据记录查询出来,然后服务端做缓存,每一次都只返回指定条数的记录给客户端。
缺点:考虑数据缓存,数据同步问题,增加了系统的复杂性。
优点:客户端分页和数据库分页的折中选择, 减少数据库访问的并发性。 将所有查询结果做处理,每一次只返回给定请求指定的记录数。
第六章:Spring的事务管理
1.事务:事务是恢复和并发控制的基本单位。
原子性(Atomicity)
一致性(Consistency)
隔离性(Isolation)
持续性/永久性(Durability)
2.commit rollback savepoint
3.青奥项目用到的事务:通过aop/tx Schema命名空间 和 @Transactionl注解, 简化了事务配置难度哦。
第七章:Spring MVC
1.MVC:提高系统的灵活性、复用性、可维护性。
2.重难点:dispatcherServelt处理请求,以及请求参数绑定到控制器方法中。 上传文件也是哦!
控制产生用户所希望的模型数据和逻辑视图, vm视图来渲染模型数据(青奥项目)。
dispatcherServlet借助视图解析器来讲逻辑视图和模型数据渲染。
3.dispatcherservlet拦截请求(servlet:拦截器) servlet-mapping配置拦截制定后缀名的请求
dispatcherservlet协调分工哦。
4.listener:监听器 深入理解web服务器哦 web.xml 监听器启动spring的业务层的spring容器
filter:过滤器
servlet:拦截器
5.契约优于配置?
6.请求映射控制器方法:@RequestMapping
7.巩固Servlet HttpServletRequest HttpServeltResponse
8.处理数据模型,视图解析。
处理请求后返回的是一个ModelAndView对象,对于String、View、ModelMap,springMVC都会将其装配为一个ModelAndView对象(视图的逻辑名、模型对象)。
9.数据校验:在执行业务逻辑前,保证收到的数据是正确合法的哦。
10.DRY原则:Don`t Repeat Yourself
11.spring 上传文件
第八章:单元测试
1.软件测试:单元测试——》集成测试——》功能测试——》系统测试。 前两项是开发人员要做的哦。
2.测试用例:test case
测试套件:将多个测试用例组装成一个测试套件。 可以使测试用例批量运行。
3.好好的练习下测试吧, 看看测试框架
第九章:敏捷开发 (编程思想哦)
1.敏捷开发:是一种以人和核心、迭代、循序渐进的开发方式。 不跟分、不急躁。
2.Spring “约定优于配置” 思想?
3.敏捷开发高效工具: 版本控制工具 代码构建工具
CVS——》SVN:集中式版本控制系统 设置里程碑:打标签。
Git:分布式版本控制系统
Maven:自动化构建(清理、编译、测试、打包、部署) 理解这些命令,如果不用maven是怎样的?
第十章:服务平台框架
1.跨平台、跨语言、跨终端需求:面向服务的体系结构(SOA)为了解决这个需求。
多个应用产品通过服务接口进行整合,比如QQ(整合了QQ微信、QQ新闻、QQ股票等等)
2.Web service:SOA最理想的实现技术?
三个角色:服务提供者 服务请求者 服务中介者。 3个操作:发布、查找、绑定
第十一章 实例开发流程
《Spring 3.0就这么简单》 读书笔记的更多相关文章
- csapp读书笔记-并发编程
这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...
- CSAPP 读书笔记 - 2.31练习题
根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1) 属于第一种情况 sum = x ...
- CSAPP读书笔记--第八章 异常控制流
第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...
- CSAPP 并发编程读书笔记
CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《C#本质论》读书笔记(18)多线程处理
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
- C#温故知新:《C#图解教程》读书笔记系列
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
- C#刨根究底:《你必须知道的.NET》读书笔记系列
一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...
- Web高级征程:《大型网站技术架构》读书笔记系列
一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...
随机推荐
- ubuntu 安装配置jdk+eclipse+android sdk
共5步: 1.安装jdk 2.安装eclipse 3.安装android-sdk 4.安装adb 5.在eclipse中安装ADT 1.安装jdk 之前已经安装好了. 用下面的命令安装,只需一些时间, ...
- 在VMware上安装CentOS-6.5 minimal - 安装VMware Tools
由于CentOS-6.5 minimal很多工具都默认没有安装,安装VMwareTools需要用到Perl,所以老伯建议先配置好网络再接着安装. 网络配置方法可以参考在VMware上安装CentOS- ...
- OpenXml入门---word里面插入图片
下面介绍如何在word里面插入图片,顺便小弟发现MSDN官网有完整的OpenXML教程,虽然是全英文的不过还是很有帮助的. Tips,原来摘抄代码里面没有模板,在copy过来发现插入word中的图片大 ...
- MMORPG大型游戏设计与开发(客户端架构)
首先为所有等待的朋友说一声歉意,实在让大家等的太久.客户端的设计本来就是一个大的工程,而且工作的关系,也没有太多时间在这方面做研究.不过在私下有空的时间,我还是继续着这方面的研究,很遗憾没有用期望的o ...
- 【原】css实现两端对齐的3种方法
说到两端对齐,大家并不陌生,在word.powerpoint.outlook等界面导航处,其实都有一个两端对齐(分散对齐)的按钮,平时使用的也不多,我们更习惯与左对齐.居中对齐.右对齐的方式来对齐页面 ...
- UESTC 33 Area --凸包面积
题意: 求一条直线分凸包两边的面积. 解法: 因为题意会说一定穿过,那么不会有直线与某条边重合的情况.我们只要找到一个直线分成的凸包即可,另一个的面积等于总面积减去那个的面积. 怎么得到分成的一个凸包 ...
- 洛谷P1538迎春舞会之数字舞蹈
题目背景 HNSDFZ的同学们为了庆祝春节,准备排练一场舞会. 题目描述 在越来越讲究合作的时代,人们注意的更多的不是个人物的舞姿,而是集体的排列. 为了配合每年的倒计时,同学们决定排出——“数字舞蹈 ...
- AC日记——统计数字字符个数 openjudge 1.7 01
01:统计数字字符个数 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一行字符,统计出其中数字字符的个数. 输入 一行字符串,总长度不超过255. 输出 输出为1行,输出字符串 ...
- VS Code
VS Code VS Code(Visual Studio Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器.几乎完美的编辑器. 官网:https://code.visualstudi ...
- java-vector hashtable过时?
vector hashtable过时? 在用JAVA集合时,IDE提示 vector 以及hashtable被arraylist ,hashmap替代,而前者又是线程同步的,不知道为什么?是效率差了的 ...