Spring Boot
文章平均质量分 95
Spring Boot框架,通过该框架的学习,快速上手生产级应用,了解详细的使用原理和使用建议,并深入原理去理解
存在morning
乐于了解新技术,善于复盘总结,不是很聪明,但能够持续进步。
展开
-
【SpringBoot学习笔记 一】SpringBoot基本概念和项目初始化
本篇Blog算是一个SpringBoot的入门吧,其实SpringBoot并不神秘,实际上可以看做一个最佳实践,这个最佳实践依据使用场景给我们整合了所有需要用到的依赖,并且经过依赖管理和验证,让我们在生产环境中通过最佳实践去写代码,大大简化了配置、减少了出错概率、能把我们从繁杂的ssm框架配置中解脱出来使我们专注于业务逻辑,想想之前要实现一个Web项目得一个依赖一个依赖加,用什么加什么那是相当麻烦,有了SpringBoot打包都给你,多方便啊,这个场景启动器Starter真是好东西啊,不过还是那句话,如果不原创 2021-09-23 10:17:16 · 1012 阅读 · 0 评论 -
【SpringBoot学习笔记 二】YAML格式文件配置方式详解
YAML配置基本概念基本语法字面量数组对象SpringBoot配置绑定@ConfigurationProperties进行JavaBean绑定@Value进行属性绑定@PropertySource进行配置绑定Spring Boot导入Spring配置@ImportResource 导入Spring配置全注解方式加载 Spring 配置总结一下...原创 2021-09-28 16:21:11 · 2317 阅读 · 0 评论 -
【SpringBoot学习笔记 三】Profile多环境配置及配置优先级
之前一直看不懂profile是干嘛的,现在终于知道了,是为了切换环境时使用不同配置身份用的,这个可比C#方便多了,记得之前拉代码的时候老会遇到配置被别人改到测试了,现在有了Maven的环境切换,方便多了,本地随便改。即使我们知道SpringBoot有这么多的配置优先级,其实实际用的时候我们也都是简单用,配置好启动身份后,我们一般只在类路径(classpath)下添加各个环境配置文件然后加载使用,避免混乱,但是大概了解下加载逻辑也便于之后方便排查问题。原创 2021-09-30 23:00:00 · 5272 阅读 · 0 评论 -
【SpringBoot学习笔记 四】SpringBoot自动配置原理
之前的Blog【SpringBoot学习笔记 一】SpringBoot基本概念和项目初始化里我提到,SpringBoot初始化的项目结构包含如下四部分,也就是只要包含如下四部分就可以启动一个最简单的SpringBoot一个配置文件:application.properties ,管理相关配置信息,在【SpringBoot学习笔记 二】YAML格式文件配置方式详解中介绍到SpringBoot的YAML配置是如何编写又是如何自动绑定到代码实体中的一个测试类:SpringbootApplicationTes原创 2021-10-08 12:41:34 · 645 阅读 · 0 评论 -
【SpringBoot学习笔记 五】Spring Boot自定义starter场景启动器
上篇Blog我们学习了SpringBoot是如何实现自动配置的,通过@Configuration的全注解配置方式和Spring Factories 发现机制自动将组件注入到容器,然后依据配置绑定,确定组件的属性值该是多少,实现了全自动的实现方式,不用我们再操心。在第一篇Blog中我们就提到过场景启动器,那么本篇Blog结合SpringBoot自动配置以及前面学的yaml配置文件等知识来自己实现一个自定义的场景启动器。starter基本概念我们再回顾下starter的概念:starter 是 Spring原创 2021-10-08 14:32:30 · 1073 阅读 · 0 评论 -
【SpringBoot学习笔记 六】JSR303数据校验、日志配置及输出、静态资源映射
前面5篇Blog详细介绍了SpringBoot的实现原理,本篇Blog从实战的角度来看下SpringBoot开发时我们还需要做哪些工作,这里我选择了三个比较重要的模块来进行介绍,包括我们的数据验证,日志配置以及静态资源的映射,这篇博客结束后我们即将进入到SpringBoot的各种整合和集成的学习中,可以理解为SpringBoot基础学习的最后一篇吧。原创 2021-10-08 17:03:05 · 729 阅读 · 0 评论 -
【SpringBoot学习笔记 七】SpringBoot定制整合JDBC-Druid-MyBatis
前面几篇博客就SpringBoot的原理以及实践的一些小技巧进行了学习,接下来的几篇Blog,我愿称之为SpringBoot对各层的整合以应对完整的开发任务,无外乎就是对数据库以及持久层的整合以及对SpringMVC的定制整合等,那么今天这篇Blog就来对数据源进行整合配置,包括各个持久层的框架。对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 都默认采用整合 Spring Data(Spring Data 也是 Spring 中与 Spring原创 2021-10-10 21:29:16 · 476 阅读 · 0 评论 -
【SpringBoot学习笔记 八】SpringBoot定制整合SpringMVC
上篇Blog详细探讨了SpringBoot是如何整合数据源的,从JDBC层面、数据源连接池层面(Druid),再到MyBatis层面。我们分别使用了`spring-boot-starter-data-jdbc、druid-spring-boot-starter、mybatis-spring-boot-starter`这三个封装好的场景启动器,通过SpringBoot的自动配置机制我们只需要关心yml配置文件内容即可简单方便的使用SpringBoot操作数据库,可以说非常方便,至少比起Spring整合MyBa原创 2021-10-12 00:21:33 · 510 阅读 · 0 评论 -
【SpringBoot学习笔记 九】SpringBoot定制整合Thymeleaf及页面国际化
整合完数据源MyBatis、SpringMVC之后,我们继续从后往前,到了页面展示的整合部分,之前我们的SSM框架使用的是JSP做为前端页面,在更早的Servlet时代用的也是JSP页面,但是时代变了,因为有了SpringBoot,JSP不再是前端页面的最佳选择了,本篇Blog就来介绍下一个SpringBoot官方推荐的默认模板引擎。原创 2021-10-14 10:14:22 · 531 阅读 · 0 评论 -
【SpringBoot学习笔记 十】深入理解SpringBoot拦截器
拦截器的概念无需赘述,在SpringMVC的一篇Blog中我就详细聊过[【Spring MVC学习笔记 七】深入理解SpringMVC拦截器原理](https://tianmaolin.blog.csdn.net/article/details/120252134),所以关于拦截器和过滤器的区别、拦截器的作用等就不再赘述了,这里主要探讨下SpringBoot是如何使用拦截器的。按照如下步骤我们来处理登录拦截这样一个场景,即未登录之前请求都被转发到login.html界面原创 2021-10-15 10:54:04 · 401 阅读 · 0 评论 -
【SpringBoot学习笔记 十一】深入理解SpringBoot异常处理
上篇Blog详细聊了SpringBoot的拦截器使用,上上篇Blog详细介绍了SpringBoot是如何定制整合页面模板Thymeleaf的,这些都可以看做SpringBoot对SpringMVC功能层面的一个完善,那么本篇Blog继续介绍SpringBoot如何处理前端请求的异常,自动配置是如何帮助我们定制错误页面并轻松应用原创 2021-10-16 22:22:07 · 775 阅读 · 0 评论 -
【SpringBoot学习笔记 十二】SpringBoot异步任务、定时任务、邮件任务
之前两篇Blog都是SpringBoot使用层面上的实践,拦截器和异常处理。今天这篇Blog也一样,从使用实践层面上看看SpringBoot给我们封装了什么,能让我们便利的进行异步任务、定时任务、邮件任务的处理。在没有SpringBoot之前,这些功能可能的实现可能需要写很多代码才能实现,同时这篇Blog是SpringBoot实践层面的最后一篇,接下来我们进入集成层面的学习,学习SpringBoot集成Swagger、Dubbo以及SpringSecurity,做个小预告,集成内容学习完就开始SpringC原创 2021-10-17 11:08:33 · 409 阅读 · 2 评论 -
【SpringBoot学习笔记 十三】SpringBoot集成Swagger3.0
在前后端分离的Web开发时代,无论是前端还是后端开发,都或多或少地被接口文档折磨过。前端经常抱怨后端给的接口文档与实际情况不一致。后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新,所以就导致了相互撕逼的现象,其实无论是前端调用后端,还是后端调用后端,都期望有一个好的接口文档。但是这个接口文档对于程序员来说,就跟注释一样,经常会抱怨别人写的代码没有写注释,然而自己写起代码起来,最讨厌的,也是写注释。所以仅仅只通过强制来规范大家是不够的,随着时间推移,版本迭代,接口文档往往很容易就跟不上代码,于是这就原创 2021-10-23 19:08:14 · 1581 阅读 · 3 评论 -
【SpringBoot学习笔记 十四】SpringBoot+Dubbo+Zookeeper集成开发
当单个节点的处理能力无法满足日益增长的计算、存储任务的时候,且硬件的提升(加内存、加磁盘、使用更好的CPU)高昂到得不偿失的时候,应用程序也不能进一步优化的时候,我们才需要考虑分布式系统。这句话反过来就是,当单个节点有能力时,最好不要引入分布式系统,因为分布式系统要解决的问题本身就是和单机系统一样的,而由于分布式系统多节点、通过网络通信的拓扑结构,会引入很多单机系统没有的问题,为了解决这些问题又会引入更多的机制、协议,带来更多的问题。记得2016年刚读研一的时候有个刚来学校任教的清河毕业的计算机老师原创 2021-10-24 21:02:34 · 7621 阅读 · 2 评论