20191105 《Spring5高级编程》笔记-【目录】
背景
开始时间:2019/09/18 21:30
Spring5高级编程
版次:2019-01-01(第5版)
Spring5最新版本:5.1.9 CURRENT GA
目录
第1章 Spring介绍
1.1. 什么是Spring
Spring被描述为构建Java应用程序的轻量级框架。
轻量级指的并不是类的数量或发布的大小,而是整体性定义Spring原则:最轻的影响。
1.1.1. Spring框架的演变
Spring 4.0x 是第一个完全支持Java8的版本,最低要求Java6。
Spring 5.x 基于Java8,与Java9完全兼容。
第2章 入门
2.1 获取Spring框架
2.1.1 快速入门
版本2.0.0.RELEASE之前的Spring Boot版本使用Spring4.x版本。
2.2 了解Spring打包
2.2.3 使用Gradle访问Spring模块
从版本4.x
开始,Spring团队转向使用Gradle
来配置
从Spring3.0开始,开发Spring应用程序时不再需要XML配置文件。可以将它们替换为注解和配置类。
ClassPathXmlApplicationContext
从配置文件中读取bean定义。
AnnotationConfigApplicationContext
从配置类读取bean定义。
第3章 在Spring中引入IoC和DI
第4章 详述Spring配置和Spring Boot
第5章 Spring AOP
第6章 Spring JDBC支持
第7章 在Spring中使用Hibernate
目前一直使用的是Mybatis,暂不学习Hibernate
第8章 在Spring中使用JPA 2进行数据访问
在Hibernate之后,JCP开发了Java数据对象(JDO)标准,然后开发了JPA。
Hibernate是JPA的一种实现,Mybatis不是。都属于ORM框架。
一直使用的是Mybatis,暂不学习JPA。
第9章 事务管理
第10章 使用类型转换和格式化进行验证
第11章 任务调度
第12章 使用Spring远程处理
第13章 Spring测试
13.1 测试类别介绍
13.2 使用Spring测试注解
Spring提供了特定于测试的注解:
这一章没有仔细学习,一方面平时开发中测试不重要,另一方面内容讲的比较浅,以后可以深入学习JUnit
和Spring-Test
项目
第14章 Spring中的脚本支持
14.1 在Java中使用脚本支持
从Java6开始,JSR-223就被捆绑到JDK中,目的是提供一种标准机制,进而在JVM上运行其他脚本语言编写的逻辑。脚本支持类在javax.script
包中。
14.2 Groovy介绍
Groovy
创建的主要目的是为JVM提供灵活的动态语言,构建在Java基础之上,弥补了Java中的一些缺陷。Groovy的动态类型支持为处理应用程序逻辑中的类属性和变量提供了更大的灵活性。Groovy支持闭包。支持DSL。
DSL
是针对特定领域的语言,其目的是建议李忠不仅可以被开发者理解,也可以被业务分析师和用户理解的语言。
这一章没有认真学习,开发中目前没见到过,可以深入学习一下Groovy
第15章 应用程序监控
JMX
(Java Management Extensions):Java管理扩展
在JMX中,公开用于JMX监控和管理的类被称为托管bean(通常成为MBean
)。Spring框架支持多种公开MBean的机制。
没认真学习,可以深入学习JMX,spring-boot-starter-actuator
第16章 Web应用程序
第17章 WebSocket
17.1 WebSocket介绍
WebSocket
是作为HTML5计划的一部分而开发的一种规范,可以实现在客户端和服务器之间发送消息的全双工单套接字连接。
WebSocket协议旨在取代所有现有的使用HTTP作为传输的双向通信方法。
WebSocket协议由两部分:首先是客户端和服务器之间的握手,然后是数据传输。WebSocket连接是在客户端和服务器之间的初始握手期间,通过在相同的底层TCP/IP连接上发出从HTTP到WebSocket协议的升级请求来建立的。在通信的数据传输部分,客户端和服务器都可以同时向双方发送消息。
17.2 与Spring一起使用WebSocket
从Spring4开始,Spring框架支持WebSocket样式的消息传递以及STOMP
作为应用程序级别的子协议。在框架内,可以在spring-websocket
模块中找到对WebSocket的支持,该模块与JSR-356(Java WebSocket)兼容。
并非所有的Web浏览器都支持该协议,Spring通过Sock JS协议提供了透明的后备选项。
WebSocket本身是一个简单的将字节转换为消息的低级协议。
鉴于WebSocket的单一套接字特性及其提供连续双向数据流的能力,WebSocket非常适用于需要高频率消息传递和低延迟通信的应用程序。可使用WebSocket的应用程序包括游戏、实时群组协作工具、消息传递系统、时间敏感的定价信息等。
17.3 使用WebSocket API
当使用Spring的WebSocket API时,通常需要实现org.springframework.web.socket.WebSocketHandler
接口或使用便利的子类。
通过实现org.springframework.web.socket.config.annotation.WebSocketConfigurer
接口来配置WebSocket请求处理。
@EnableWebSocket
17.4 使用STOMP发送消息
在使用WebSocket时,通常会使用STOMP等子协议作为客户端和服务器之间的通用格式,以便客户端和服务器都知道应该发生什么并做出相应的反应。Spring框架支持STOMP。
STOMP
是一种简单的基于帧的消息传递协议(建立在HTTP基础之上),可用于任何可靠的双向流网络协议,比如WebSocket。
第18章 Spring项目:批处理、集成和XD等
18.1 Spring Batch
Spring Batch是一个批处理框架,构建在核心Spring框架上。
Spring Batch提供了作业缩放和并行处理的能力。
18.2 JSR-352
Spring Batch完全支持JSR-352(针对Java平台的批处理应用程序)。
18.3 Spring Boot Batch
Spring Boot为Spring Batch提供一个启动器。
18.4 Spring Integration
Spring Integration项目提供了企业集成模式(Enterprise Integration Pattern,EIP)的开箱即用型实现。侧重于消息驱动架构,为集成解决方案、异步功能和松耦合组件提供了一个简单的模型,并且它是为可扩展性和可测试性而设计的。
18.5 Spring XD
Spring XD是一个可扩展的运行时服务,专为分布式数据采集、实时分析、批处理和数据导出而设计。Spring XD基于许多现有的Spring组合项目,主要是Spring Framework、Spring Batch和Spring Integration。Spring XD的目标是提供一种统一的方式,用以将许多系统集成到一个统一的大数据解决方案中,从而帮助减少许多常见用例的复杂性。
18.6 Spring框架的五个最显著的功能
18.6.1 功能性Web框架
功能型Web框架(spring-webflux模块)是对Spring MVC的反应式补充,他提供一个针对异步API设计的Web编程模型。该框架是根据反应式编程原则构建的。
18.6.3 JDK模块化
JDK模块化被认为是Java9最大的改进之处。模块化功能被称为Project Jigsaw
。
18.6.5 Spring支持JUnit 5 Jupiter
JUnit Jupiter是新的编程模型和扩展模型的组合,用于在Junit5中编写测试和扩展。JUnit子项目提供了一个TestEngine,用于在平台上运行基于Jupiter的测试。
20191105 《Spring5高级编程》笔记-【目录】的更多相关文章
- UNIX环境高级编程笔记 目录
每一章的重点会使用加粗字体 第一章:UNIX基础知识:UNIX体系结构:文件和目录:输入和输出:程序和进程:出错处理:信号:时间值:系统调用和库函数 第三章:文件I/O:文件描述符:文件操作函数:文件 ...
- Android高级编程笔记(四)深入探讨Activity(转)
在应用程序中至少包含一个用来处理应用程序的主UI功能的主界面屏幕.这个主界面一般由多个Fragment组成,并由一组次要Activity支持.要在屏幕之间切换,就必须要启动一个新的Activity.一 ...
- UNIX环境高级编程笔记之文件I/O
一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书 ...
- javascript高级编程笔记01(基本概念)
1.在html中使用JavaScript 1. <script> 元素 <script>定义了下列6个属性: async:可选,异步下载外部脚本文件. charset:可选, ...
- C#高级编程笔记之第三章:对象和类型
类和结构的区别 类成员 匿名类型 结构 弱引用 部分类 Object类,其他类都从该类派生而来 扩展方法 3.2 类和结构 类与结构的区别是它们在内存中的存储方式.访问方式(类似存储在堆上的引用类型, ...
- C#高级编程笔记之第二章:核心C#
变量的初始化和作用域 C#的预定义数据类型 流控制 枚举 名称空间 预处理命令 C#编程的推荐规则和约定 变量的初始化和作用域 初始化 C#有两个方法可以一确保变量在使用前进行了初始化: 变量是字段, ...
- C#高级编程笔记 (6至10章节)运算符/委托/字符/正则/集合
数学的复习,4^-2即是1/4/4的意思, 4^2是1*2*2的意思,而10^-2为0.01! 7.2运算符 符号 说明 例 ++ 操作数加1 int i=3; j=i++; 运算后i的值为4,j ...
- 20191105 《Spring5高级编程》笔记-第12章
第12章 使用Spring远程处理 12.4 在Spring中使用JMS 使用面向消息的中间件(通常成为MQ服务器)是另一种支持应用程序间通信的流行方法.消息队列(MQ)服务器的主要优点在于为应用程序 ...
- 20191105 《Spring5高级编程》笔记-第5章
第5章 Spring AOP 面向切面编程(AOP)是面向对象编程(OOP)的补充.AOP通常被称为实施横切关注点的工具.术语横切关注点是指应用程序中无法从应用程序的其余部分分解并且可能导致代码重复和 ...
随机推荐
- 企业网站的SSL签证生产测试以及https配置方法
这一次要做企业网站怎么获得安全的数字证书,没有数字证书的话,在浏览器访问网站的时候会跳出不安全界面,而且钓鱼网站也会让用户进去个假网站,一般企业可以去阿里云去买数字证书,买好之后浏览器便会加载这个数字 ...
- 文本数据挖掘 Matrix67: The Aha Moments
转自:http://www.matrix67.com/blog/archives/5044 互联网时代的社会语言学:基于SNS的文本数据挖掘 今年上半年,我在人人网实习了一段时间,期间得到了很多宝贵的 ...
- 组件通信 $ref
(1)放在dom上表示获取当前dom元素, (2)放到组件上表示获取当前组件实例 (3)在v-for中获取的是集合 <!DOCTYPE html> <html lang=" ...
- 如何删除Github上的仓库
1.首先,进入自己的github账户页面,点击头像选择下面的Your repositorys,点击进入 2.进入以后选中自己要删除的仓库,点击进去该仓库界面 3.找到Settings按钮,点击进入 4 ...
- TCP/IP基础总结性学习(7)
确保 Web 安全的 HTTPS 在 HTTP 协议中有可能存在信息窃听或身份伪装等安全问题.使用 HTTPS 通信机制可以有效地防止这些问题. 一. HTTP 的缺点 HTTP 主要有这些不足,例举 ...
- Vuex-全局状态管理【传递参数】
src根目录 新建store文件夹,新建index.js 作为入口 在store文件夹中 新建modules文件夹 modules文件夹中,新建 a.js b.js 2个文件 a.js const s ...
- python-globals()、locals()的使用
globals() 函数返回一个全局变量的字典,包括所有导入的变量locals() 函数返回一个当前位置的所有局部变量的字典print(globals())print(locals()) global ...
- Leetcode 1. Two Sum(hash+stl)
Given an array of integers, return indices of the two numbers such that they add up to a specific ta ...
- spring学习笔记之---IOC和DI
IOC和DI (一)IOC (1) 概念 IOC (Inverse of Control) 反转控制,就是将原本在程序中手动创建对象的控制权,交给spring框架管理.简单的说,就是创建对象控制权被反 ...
- 解决:使用ajax验证登录信息返回前端页面时,当前整个页面刷新。
源代码如下: function loginform(){ $.ajax({ url:"loginValidate.do", type:'post', data:{"nam ...