Spring Boot 完整讲解
SpringBoot学习笔记
文章写得比较详细,所以很长(105336 字数),可以参考目录
文章目录
- SpringBoot学习笔记
- 一、 Spring Boot 入门
- 预:必须掌握的技术:
- 1. Spring Boot 简介
- 2.微服务
- 3.环境准备
- 4.Spring Boot HelloWorld
- 5.Hello World 的探究
- 6.使用Spring Initializer快速创建Spring Boot 项目
- 二、Spring Boot 配置
- 1. 配置文件
- 2. YAML语法
- 附:Spring Boot单元测试
- 3. 通过配置文件注入
- 1) 数据绑定到基础数据类型
- 2) 将数据绑定到类中 含配置文件与类绑定的方法
- 3) @Value 获取值和 @ConfigurationProperties获取值的比较
- 4) 配置文件注入值数据校验
- 5) @PropertySource & @ImportResource
- 4)Spring配置文件注入
- 4.配置文件占位符
- 5.Profile
- 6.配置文件的加载位置
- 7.Spring Boot 外部配置加载顺序
- 8.Spring Boot 自动配置原理
- 3.自动配置原理(细节)
- 三、Spring Boot 与日志
- 四、SpringBoot与Web开发
- 1、使用SpringBoot
- 2、SpringBoot对静态页面的映射规则
- 访问静态资源
- 欢迎页配置
- 图标
- 3、模板引擎
- 引入thymeleaf
- Thymeleaf使用&语法
- 语法规则
- 1)、th:text 改变当前元素里面的内容
- 2)表达式
- Variable Expressions: ${...} 获取变量值,OGNL;
- Message Expressions: #{...} 获取国际化内容
- Link URL Expressions: @{...} 定义URL链接
- Fragment Expressions: ~{...} 插入文档
- Literals(字面量)
- Text operations: (文本操作)
- Arithmetic operations: (数学运算)
- Boolean operations: (布尔运算)
- Comparisons and equality:(比较运算)
- Conditional operators:(条件运算)(三元运算符也支持)
- Special tokens:(特殊)
- 4、SpringMVC自动配置
- 5、如何修改SpringBoot的默认配置
- 6、RestfulCRUD
- 7、错误处理机制
- 五、配置嵌入式Servlet容器
- 六、数据访问
- 1、jdbc配置
- 2.使用druid
- 3、整合Jpa
- 4、整合MyBatis
- 七、创建SpringBootApplication
- 八、缓存
- 1、统一的缓存开发规范:J2EE——JSR107
- 2、Spring缓存抽象
- 3、整合redis缓存
- 九、Spring Boot 与消息
- 1、消息队列是什么以及why消息队列
- 2、重要概念
- 3、RabbitMQ
- 4、RabbitMQ整合
- 十、SpringBoot与检索
- 十一、Spring Boot 与任务
- 十二、Spring Boor与安全
- 十三、Spring Boot与分布式
- 十四、Docker
文章目录
- SpringBoot学习笔记
- 一、 Spring Boot 入门
- 预:必须掌握的技术:
- 1. Spring Boot 简介
- 2.微服务
- 3.环境准备
- 4.Spring Boot HelloWorld
- 5.Hello World 的探究
- 6.使用Spring Initializer快速创建Spring Boot 项目
- 二、Spring Boot 配置
- 1. 配置文件
- 2. YAML语法
- 附:Spring Boot单元测试
- 3. 通过配置文件注入
- 1) 数据绑定到基础数据类型
- 2) 将数据绑定到类中 含配置文件与类绑定的方法
- 3) @Value 获取值和 @ConfigurationProperties获取值的比较
- 4) 配置文件注入值数据校验
- 5) @PropertySource & @ImportResource
- 4)Spring配置文件注入
- 4.配置文件占位符
- 5.Profile
- 6.配置文件的加载位置
- 7.Spring Boot 外部配置加载顺序
- 8.Spring Boot 自动配置原理
- 3.自动配置原理(细节)
- 三、Spring Boot 与日志
- 四、SpringBoot与Web开发
- 1、使用SpringBoot
- 2、SpringBoot对静态页面的映射规则
- 访问静态资源
- 欢迎页配置
- 图标
- 3、模板引擎
- 引入thymeleaf
- Thymeleaf使用&语法
- 语法规则
- 1)、th:text 改变当前元素里面的内容
- 2)表达式
- Variable Expressions: ${...} 获取变量值,OGNL;
- Message Expressions: #{...} 获取国际化内容
- Link URL Expressions: @{...} 定义URL链接
- Fragment Expressions: ~{...} 插入文档
- Literals(字面量)
- Text operations: (文本操作)
- Arithmetic operations: (数学运算)
- Boolean operations: (布尔运算)
- Comparisons and equality:(比较运算)
- Conditional operators:(条件运算)(三元运算符也支持)
- Special tokens:(特殊)
- 4、SpringMVC自动配置
- 5、如何修改SpringBoot的默认配置
- 6、RestfulCRUD
- 7、错误处理机制
- 五、配置嵌入式Servlet容器
- 六、数据访问
- 1、jdbc配置
- 2.使用druid
- 3、整合Jpa
- 4、整合MyBatis
- 七、创建SpringBootApplication
- 八、缓存
- 1、统一的缓存开发规范:J2EE——JSR107
- 2、Spring缓存抽象
- 3、整合redis缓存
- 九、Spring Boot 与消息
- 1、消息队列是什么以及why消息队列
- 2、重要概念
- 3、RabbitMQ
- 4、RabbitMQ整合
- 十、SpringBoot与检索
- 十一、Spring Boot 与任务
- 十二、Spring Boor与安全
- 十三、Spring Boot与分布式
- 十四、Docker
一、 Spring Boot 入门
预:必须掌握的技术:
- Spring 框架的使用经验
- 熟练使用Maven进行项目构建和依赖管理
- 熟练使用IDEA或Eclipse
1. Spring Boot 简介
背景
Spring Boot 来简化Spring 应用的开发,约定大于配置,去繁从简,明显提高开发效率
解决的问题
- Spring全家桶时代
- Spring Boot ——》J2EE一站式解决方案
- Spring Cloud -> 分布式整体解决方案(Spring技术栈)
优点
- 快速创建独立运行的Spring项目以及与主流框架集成
- 使用嵌入式Servlet容器,应用无需打成WAR包,直接使用Java -jar jar包名即可运行
- starters自动依赖与版本控制
- 大量的自动配置,简化开发,也可以修改默认值
- 无需配置XML,无需代码生成,开箱即用
- 准生产环境的运行时应用监控
- 与云计算的天然集成
缺点
入门快,精通很难
Spring Boot是对Spring 框架的再封装,若对Spring不了解,对SpringBoot的封装机制也不会很了解,Spring Boot中许多自动配置,需要我们了解Spring的API(只有在了解Spring的API后才能更精通Spring Boot
2.微服务
martin fowler详细介绍了微服务Martin Fowler:microservices
What are Microservices?
微服务是一种架构风格
提倡在开发应用时,一个应用应该是一组小型服务;可以通过HTTP的方式进行互通
单体应用
- All In One ,
- 是传统的架构,
- 优点:开发 、部署、运维要简单,
- 缺点:牵一发动全身,不适合大型应用
- 在多个服务器上复制这个单体进行扩展
微服务
- 一个微服务架构把每个功能元素放进一个独立的服务中
- 通过跨域服务器分发这些服务进行扩展,只在需要时进行扩展
Spring Boot 完整讲解的更多相关文章
- Spring Boot基础讲解
Spring Boot Spring Boot 是由Pivotal团队提供的框架,它并不是一个全新的框架,而是将已有的 Spring 组件整合起来,设计目的是用来简化新Spring应用的初始搭建以及开 ...
- 超全、超详的Spring Boot配置讲解笔记
springboot默认加载配置 SpringBoot使用两种全局的配置文件,全局配置文件可以对一些默认配置进行修改. application.properties application.yml 这 ...
- 《Spring Boot 入门及前后端分离项目实践》系列介绍
课程计划 课程地址点这里 本课程是一个 Spring Boot 技术栈的实战类课程,课程共分为 3 个部分,前面两个部分为基础环境准备和相关概念介绍,第三个部分是 Spring Boot 项目实践开发 ...
- Spring Boot 揭秘与实战(七) 实用技术篇 - 异步任务
文章目录 1. Spring Boot 集成异步任务 2. 单发服务模式 3. 请求应答模式 4. 源代码 Spring 对异步任务具有很好的支持.这篇文章,我们透过 Spring Boot 来讲解下 ...
- Spring Boot 静态资源处理
spring Boot 默认的处理方式就已经足够了,默认情况下Spring Boot 使用WebMvcAutoConfiguration中配置的各种属性. 建议使用Spring Boot 默认处理方式 ...
- Spring Boot 属性配置和使用(转)
Spring Boot 属性配置和使用 Spring Boot 允许通过外部配置让你在不同的环境使用同一应用程序的代码,简单说就是可以通过配置文件来注入属性或者修改默认的配置. Spring Boot ...
- 一起来学spring Cloud | 第一章:spring Cloud 与Spring Boot
目前大家都在说微服务,其实微服务不是一个名字,是一个架构的概念,大家现在使用的基于RPC框架(dubbo.thrift等)架构其实也能算作一种微服务架构. 目前越来越多的公司开始使用微服务架构,所以在 ...
- Spring Boot 实战与原理分析视频课程
Spring Boot 实战与原理分析视频课程 链接:https://pan.baidu.com/share/init?surl=PeykcoeqZtd1d9lN9V_F-A 提取码: 关注公众号[G ...
- Spring Boot 支持多种外部配置方式
Spring Boot 支持多种外部配置方式 http://blog.csdn.net/isea533/article/details/50281151 这些方式优先级如下: 命令行参数 来自java ...
随机推荐
- 大数据篇:ElasticSearch
ElasticSearch ElasticSearch是什么 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口. ...
- php不用第三个变量,交换两个数的值
//字符串版本 结合使用substr,strlen两个方法实现 $a="a"; $b="b"; echo '交换前 $a:'.$a.',$b:'.$b.'< ...
- 【猫狗数据集】利用tensorboard可视化训练和测试过程
数据集下载地址: 链接:https://pan.baidu.com/s/1l1AnBgkAAEhh0vI5_loWKw提取码:2xq4 创建数据集:https://www.cnblogs.com/xi ...
- 什么是phpMyAdmin
phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此Web接口可以成为一个简易方式输入繁杂 ...
- SSL/TLS 协议运行机制概述(一)
SSL/TLS 协议运行机制概述(一) SSL/TLS 发展史 1994年,NetScape 设计了SSL协议(Secure Sockets Layer) 1.0,未正式发布 1995年,NetSca ...
- ggplot2(10) 减少重复性工作
10.1 简介 灵活性和鲁棒性的敌人是:重复! 10.2 迭代 last_plot()用于获取最后一次绘制或修改的图形. 10.3 绘图模板 gradient_rb <- scale_colou ...
- Linux进程间通信-eventfd
Linux进程间通信-eventfd eventfd是linux 2.6.22后系统提供的一个轻量级的进程间通信的系统调用,eventfd通过一个进程间共享的64位计数器完成进程间通信,这个计数器由在 ...
- 死磕Lambda表达式(四):常用的函数式接口
失去人性,失去很多:失去兽性,失去一切.--<三体> 在Java8支持Lambda表达式以后,为了满足Lambda表达式的一些典型使用场景,JDK为我们提供了大量常用的函数式接口.它们主要 ...
- Error: java.net.ConnectException: Call From tuge1/192.168.40.100 to tuge2:8032 failed on connection exception
先看解决方案,再看唠嗑,唠嗑可以忽略. 解决方案: 使用start yarn.sh启动yarn就可以了. 唠嗑: 今天学习Spark基于Yarn部署.然后总以为Yarn是让Spark启动的,提交程序的 ...
- python之路---协程
阅读目录 一 引子 二 协程介绍 三 Greenlet模块 四 Gevent模块 引子 之前我们学习了线程.进程的概念,了解了在操作系统中进程是资源分配的最小单位,线程是CPU调度的最小单位.按道理来 ...
- Spring Boot基础讲解