![](https://img-blog.csdnimg.cn/755088512cf04d0798b2b1900cec9a5d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
SpringBoot2专栏
文章平均质量分 87
本专栏基于SpringBoot2.x版本进行讲解,带你学习SpringBoot,实现从入门到精通。欢迎免费订阅本专栏哦
一一哥Sun
孙玉昌,十年软件开发及授课经验,专注大学生毕业设计及面试求职私塾式指导!阿里云专家、CSDN博客专家、掘金优质创作者!曾任国内物流行业独角兽企业架构师,参与国内领先的智能物流系统平台天眼/冷链/订单/车次中心系统研发;主导某在线教育App及后台架构;负责大庆油田采油管理系统,春华旅业云计算系统等大型项目研发。目前担任某知名机构技术研发经理,上海校区教学负责人,培养了大批入职阿里、IBM、百度、华为等名企的高薪学生。坚持一心做教育,做一流教育的理念,被学生爱称为"一一哥"!
展开
-
SpringBoot如何整合JPA框架?看这里吧
Spring Data是Spring提供的一个用于简化数据库访问、支持云服务的开源框架。它是一个伞形项目,包含了大量关系型数据库及非关系型数据库的数据访问解决方案,其设计目的是使我们可以快速且简单地使用各种数据访问技术。Spring Boot默认采用整合Spring Data的方式统一处理数据访问层,通过添加大量自动配置,引入各种数据访问模板xxxTemplate以及统一的Repository接口,从而达到简化数据访问层的操作。原创 2022-12-19 10:21:44 · 1673 阅读 · 5 评论 -
SpringBoot2.x系列教程60--SpringBoot整合消息队列之ActiveMQ环境配置
SpringBoot2.x系列教程60--SpringBoot整合消息队列之ActiveMQ环境配置作者:一一哥我在上一章节中,给大家介绍了JMS协议及消息中间件,消息队列等概念,本节中我会介绍ActiveMQ的概念及其环境配置。一. ActiveMQ1. ActiveMQ概述Apache ActiveMQ ™ is the most popular and powerful...原创 2020-04-15 16:31:28 · 740 阅读 · 0 评论 -
SpringBoot2.x系列教程67--Spring Boot整合分布式事务简介
SpringBoot2.x系列教程67--Spring Boot整合分布式事务简介作者:一一哥一. 分布式事务简介1. 什么是分布式事务百度百科对分布式事务的解释如下:分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于分布式系统的不同节点之上。当数据库的数据越来越大,数据库无法承受起压力,就会开始分库分表,分库分表后不同的库就会分布在不同的服...原创 2020-04-19 21:09:28 · 1317 阅读 · 0 评论 -
SpringBoot2.x系列教程66--Spring Boot整合分布式事务之数据库事务回顾
SpringBoot2.x系列教程66--Spring Boot整合分布式事务之数据库事务回顾作者:一一哥本节主要内容一. 事务出现的原因转账是生活中常见的操作,比如从A账户转账100元到B账号。站在用户的角度而言,这是一个逻辑上的单一操作,然而在数据库系统中,至少会分成两个步骤来完成:1.将A账户的金额减少100元; 2.将B账户的金额增加100元。在这个过程中可...原创 2020-04-17 22:27:01 · 511 阅读 · 0 评论 -
SpringBoot2.x系列教程06--新纪元之SpringBoot官网以下载模板方式创建(了解)
SpringBoot系列教程06--新纪元之SpringBoot官网以下载模板方式创建(了解)作者:一一哥一. 去http://spring.io网站下载目标来构建项目我们也可以访问:http://start.spring.io/,然后选择构建工具Maven Project、Spring Boot版本2.2.25以及一些工程基本信息,可参考下图所示Spring initialize...原创 2020-03-24 22:35:10 · 1107 阅读 · 0 评论 -
SpringBoot2.x系列教程05--新纪元之SpringBoot初使用
SpringBoot系列教程05--新纪元之SpringBoot初使用作者:一一哥一.Spring Initializr方式创建1.新建项目2.选择Spring Initializr3.设置项目的包名及坐标GAV信息4.设置启动器及SpringBoot版本注意:该方式默认是从http://spring.io官网上下载源码模板,然后自动导入的ideal...原创 2020-03-24 22:34:35 · 1450 阅读 · 0 评论 -
Day06_10_SpringBoot教程之数据校验
SpringBoot数据校验一.参数校验简介1. 参数校验概述我们在进行Web开发的时候,会经常需要对传入的参数进行校验,比如字段非空,字段长度限制,邮箱格式验证等等.如果数据比较少的时候还比较容易处理,但当数据比较多的时候会显得比较麻烦,而且处理不当的时候,还会造成代码重复.这时候就需要Spring Boot对参数进行校验了,我们可以使用Validation对数据进行校验.2. ...原创 2019-06-03 09:19:06 · 411 阅读 · 0 评论 -
Day06_06_Spring Boot教程之Thymeleaf模板
Thymeleaf模板详细介绍一.Thymeleaf 简介Thymeleaf是一个XML/XHTML/HTML5模板引擎,可用于Web与非Web环境中的应用开发.它是一个开源的Java库,基于Apache License 2.0许可,由Daniel Fernández创建,该作者还是Java加密库Jasypt的作者.Thymeleaf提供了一个用于整合Spring MVC的可选模块,在...原创 2019-05-31 10:05:27 · 353 阅读 · 0 评论 -
Day06_14_SpringBoot教程之利用Swagger2生成在线文档
SpringBoot中利用Swagger2生成在线文档一.Swagger2简介我们利用Spring Boot构建的RESTful API,其目的通常都是由于多终端的原因.这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端.那么此时我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发、Android开发或是Web开发等...原创 2019-06-03 14:45:10 · 340 阅读 · 0 评论 -
SpringBoot2.x系列教程04--新纪元之SpringBoot环境要求
SpringBoot系列教程04--新纪元之SpringBoot环境要求作者:一一哥一.基本说明本系列教程采用Spring Boot 2.x.x.RELEASE版本;需要Java 8+版本;Spring Framework5.0.4.RELEASE或更高版本;Maven 3.2+或Gradle 4+。另外Spring Boot本身内嵌了一些servlet容器:二.环...原创 2020-03-24 22:33:30 · 1183 阅读 · 0 评论 -
Day06_12_SpringBoot教程之YAML语法教程
YAML语法教程我们进行项目免不了要写配置文件,怎么写配置文件也是一门学问.YAML是专门用来写配置文件的语言,非常简洁和强大,远比JSON格式方便.本文介绍YAML的语法,以JS-YAML的实现为例.一. 简介YAML语言(发音 /ˈjæməl/ )的设计目标,就是方便人类读写,它实质上是一种通用的数据串行化格式.1.YAML基本语法规则大小写敏感;...原创 2019-06-03 13:23:26 · 267 阅读 · 0 评论 -
Day06_01_SpringBoot教程之SpringBoot简介
SpringBoot简介一. Spring框架起源Spring在未产生之前,是EJB大行其道的时代,EJB简而言之是一个重量级框架.Rod Johnson在2002年编著的《Expert one on one J2EE design and development》一书中批判了那个时候Java EE 系统框架,说其臃肿、低效、脱离现实,同年推出了《Expert one-on-one ...原创 2019-05-29 15:57:14 · 551 阅读 · 1 评论 -
SpringBoot2.x系列教程03--新纪元之SpringBoot初相见
作者:一一哥一.概述当这个世界上大家都用木棍石头打架的时候,就看谁的人多力气大,谁就容易获胜。但是当热兵器产生以后,人多也扛不住船坚炮利!SpringBoot的诞生,无异于从冷兵器时代跨入了热兵器时代!1. Spring Boot的诞生背景现在一些动态语言开始流行(Ruby、Groovy、Scala、Node.js)起来,这时候越发的显得传统的Spring的开发方式起来显得...原创 2020-03-24 22:32:50 · 1352 阅读 · 0 评论 -
SpringBoot2.x系列教程10--小花样之SpringBoot配置自定义Banner
SpringBoot系列教程10--小花样之SpringBoot配置自定义Banner作者:一一哥一. Spring Boot 常用配置本章节主要介绍一下 Spring Boot 中的一些常用配置,比如:自定义 Banner、配置日志、关闭特定的自动配置等.在进行配置之前,我们还是结合之前的文章,先创建一个SpringBoot项目,然后进行本章节的学习。二. 自定义 Banne...原创 2020-03-25 09:00:05 · 1450 阅读 · 0 评论 -
Day06_09_SpringBoot教程之统一异常处理实现方案及原理解析
SpringBoot统一异常处理方案及原理解析一. SpringBoot默认异常处理简介我们在做Web应用的时候,处理请求的过程中发生错误是非常常见的情况,那么在发生了错误的时候,SpringBoot是如何处理的呢?1. 错误处理概述Spring Boot 默认提供了一个程序出错的结果映射路径/error.这个/error请求会在BasicErrorController中...原创 2019-06-02 17:12:43 · 1067 阅读 · 0 评论 -
SpringBoot2.x系列教程02--史前文明之Spring发展史
作者:一一哥一. Spring1.x 时代1.功能:1.x时代的Spring把所有的功能都集中在一个项目中,包含了核心的IoC、AOP,也包含了其他一些比如JDBC、Mail、ORM、事务、定时任务、Spring MVC等功能.2.优点:支持基于XML的配置;支持依赖注入与声明式事务。3.缺点:只支持基于XML的配置,而且通过xml文件来配置bean,当...原创 2020-03-24 22:32:08 · 1154 阅读 · 0 评论 -
SpringBoot2.x系列教程01--史前文明之Spring简介
作者:一一哥一. Spring之起源1.你知道J2EE吗?要说到Spring的历史起源,首先咱们要说说J2EE这个玩意儿。J2EE在1999年和2000年的时候开始得到广泛实现,在J2EE中提出了”事务管理“等核心中间层标准化的概念,但是在实践中出现了各种问题,尤其是开发效率,开发难度和实际的性能都达不到预期。2.EJB这个框架那时候开发J2EE基本都是使用EJB这个框...原创 2020-03-24 22:31:13 · 1838 阅读 · 0 评论 -
Day14_05_FastDFS教程之Springboot实现
Springboot中利用FASTDFS实现图片上传一. 解决fastdfs-client-java-1.27-SNAPSHOT依赖包不存在的问题因为fastdfs-client-java-1.27-SNAPSHOT.jar这个依赖包在maven中央仓库是没有的,需要自己编译源码成jar本地安装到maven 的本地仓库,安装完以后就能正常引用了(注意:本地必须安装了Maven,并配置...原创 2019-06-28 13:44:24 · 578 阅读 · 0 评论 -
Day06_04_Spring Boot教程之开发Web应用
SpringBoot中开发Web应用本教程利用Spring boot实现Web开发.一. Web开发方式简介Spring boot提供了一套完整的web开发流程,从前端到后台,再到数据库,定时任务,消息队列等都可以支持.一般利用Spring框架开发一个Web应用有两种方式:1. 前后端分离这种方式前端开发和后端开发完全分离,只需要协商好接口就行,前端负责开发页面并调用后端接口展...原创 2019-05-30 16:24:15 · 552 阅读 · 0 评论 -
Day06_05_Spring Boot教程之Spring boot中支持jsp
Spring boot中支持jsp的实现虽然Spring MVC支持JSP,但是Spring Boot不建议使用JSP,因为在使用嵌入式servlet容器时,有一些使用限制.但如果一定要在SpringBoot中使用jsp,也是可以做到的,以下为实现过程.一. Spring boot中实现对jsp支持的步骤1. 创建Maven web module2. 添加web相关依赖在...原创 2019-05-31 09:42:58 · 311 阅读 · 0 评论 -
SpringBoot2.x系列教程09--新纪元之SpringBoot原理探究(重点)
SpringBoot系列教程09--新纪元之SpringBoot原理探究(重点)作者:一一哥一.SpringBoot 工作原理概述Spring boot应用程序采用各种Starters启动器,入口类是包含@SpringBootApplication注解和main方法的类,然后使用@ComponentScan注解自动扫描项目中的所有组件,并且Spring Boot会根据@EnableAu...原创 2020-03-24 22:37:02 · 1203 阅读 · 0 评论 -
Day06_07_SpringBoot教程之实现文件上传
在SpringBoot项目中实现文件上传一. 概述在实际的企业开发中,文件上传是比较常见的功能之一.而SpringBoot没有自己的文件上传技术,是依赖于SpringMVC的文件上传技术.在SpringBoot中集成了SpringMVC常用的功能,当然也包含了文件上传的功能,实现起来没有太多的区别.接下来我们通过示例展示下文件上传在Springboot项目中的实现.1. Multipa...原创 2019-05-31 13:24:32 · 543 阅读 · 0 评论 -
Day06_13_SpringBoot教程之实现Restful风格API
Day06_13_SpringBoot教程之实现Restful风格API一.Restful简介1. Restful概述Restful是一种软件架构风格,它是一种设计风格而不是标准,只是提供了一组设计原则和约束条件.它主要用于客户端和服务器交互类型的软件开发中,基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制.在服务器端,应用程序状态和功能可以分为各种资源.资源是一个...原创 2019-06-03 14:04:40 · 420 阅读 · 0 评论 -
Day06_11_SpringBoot教程之实现热部署
SpringBoot中实现热部署spring-boot-devtools一个为开发者服务的模块,其中最重要的一个功能就是可以将更新后的代码的自动部署到应用上面去.热部署原理是在发现代码有更改之后,重新启动应用,但是速度比手动停止后再启动要快.其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类...原创 2019-06-03 10:45:47 · 329 阅读 · 0 评论 -
Day06_02_Spring Boot教程之SpringBoot快速实现
SpringBoot快速实现一. 快速入门有很多方法可以快速创建Spring boot项目,可以通过idea的Spring boot initialization来创建,也可以通过手工新建一个maven工程,然后引入Spring boot的dependency来完成Spring boot的工程导入,还可以通过Spring官网的来创建Spring boot项目.本教程采用Spring boo...原创 2019-05-29 17:04:02 · 349 阅读 · 0 评论 -
SpringBoot2.x系列教程08--新纪元之SpringBoot中编写测试用例
SpringBoot系列教程08--新纪元之SpringBoot中编写测试用例作者:一一哥我们在上一个案例的基础之上,添加spring-boot-starter-test依赖,看看在Spring Boot中如何实现测试用例的编写。一. 引入Test依赖<dependencies> <dependency> <g...原创 2020-03-24 22:36:22 · 1298 阅读 · 0 评论 -
Day06_03_Spring Boot教程之SpringBoot常用配置
SpringBoot常用配置一. Spring Boot 常用配置1. 概述本章节主要介绍一下 Spring Boot 中的一些常用配置,比如:自定义 Banner、配置日志、关闭特定的自动配置等.2. 自定义 Banner在 Spring Boot 启动的时候会有一个默认的启动图案.. ____ _ __ _ _ /...原创 2019-05-29 18:07:06 · 454 阅读 · 0 评论 -
SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)
SpringBoot系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)作者:一一哥一.Maven方式创建Spring Boot项目1.配置Maven环境在以maven方式创建Spring Boot项目之前,请先确保自己的Maven并配置好环境变量,并且在ideal中关联好maven环境。2.创建一个新的maven项目3.设置项目坐标信息...原创 2020-03-24 22:35:47 · 1628 阅读 · 0 评论 -
Day06_08_SpringBoot教程之实现SSM整合
SpringBoot中实现SSM整合Spring Boot可以帮助我们快速搭建一个SSM框架环境,那么建立Spring boot项目之后怎样具体和SSM整合呢?以下给大家介绍在SpringBoot项目中进行SSM整合的两种方式:1️⃣. XML方式; 2️⃣. 注解两种方式.一. 在SpringBoot中以XML方式进行SSM整合1. 创建一个新的module--boot_ss...原创 2019-05-31 16:47:05 · 451 阅读 · 0 评论 -
Ambiguous handler methods mapped for 'xxx'的解决办法
Ambiguous handler methods mapped for '/book/es'一. 问题描述我们在创建Restful风格的url的时候,可以直接将参数变量值放入到url中,然后传递到后台,后台自动识别对应的方法,非常的方便.但是如果我们的接口方法中出现了方法重载的情况,则有可能会出现一些问题,如下:package com.syc.boot.web;import...原创 2019-07-07 12:41:11 · 28364 阅读 · 8 评论 -
SpringBoot2.x系列教程71--分布式缓存Hazelcast详解及原理探究
SpringBoot2.x系列教程71--分布式缓存Hazelcast详解及原理探究作者:一一哥一. Hazelcast1. Hazelcast简介Hazelcast 是由Hazelcast公司开发的一款开源的分布式内存级别的缓存数据库,可以为基于JVM环境运行的各种应用提供分布式集群和分布式缓存服务。利用Hazelcast可以满足“分布式”、“集群服务”、“网格式内存数据”、...原创 2020-04-24 13:57:28 · 880 阅读 · 0 评论 -
SpringBoot2.x系列教程78--Web Service详细讲解
SpringBoot2.x系列教程78--Web Service详细讲解作者:一一哥一. Web Service详解1. Web Service的概念我们先来看看百度百科给出的定义: Web Service是一个平台独立的,低耦合、自包含的,基于可编程的Web应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。 Web Service技术能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可以相原创 2020-05-10 11:47:08 · 767 阅读 · 0 评论 -
带你手写starter组件,搞懂SpringBoot自动配置原理
至此,我们就实现了手写SpringBoot项目中的starter组件,进而实现了自动配置。其实从仿照druid的Datasource类中就可以发现,SpringBoot的核心机制就是可以自动配置,通过大量的自动配置,大量的bean被自动配置到容器中,这就大大简化了过去手动配置bean的过程,从而简化整个项目的开发过程,这也就是SpringBoot的最大优势所在!现在你知道SpringBoot是怎么实现自动配置的了吗?如果你还有什么疑问,可以在评论区给壹哥留言,或者关注下面的【Java架构栈https。...原创 2022-07-28 09:31:41 · 880 阅读 · 44 评论 -
Spring Security系列教程05--实现Form表单认证
一. Form表单认证1. 认证方式我们从前文中得知,Spring Security中的认证方式可以分为HTTP层面和表单层面,常见的认证方式如下:①. HTTP基本认证; ②. Form表单认证; ③. HTTP摘要认证;在本文中,我们来学习Form表单认证。2. 表单认证简介其实在SpringBoot开发环境中,只要我们添加Spring Security的依赖包,就会自动实现表单认证。我们可以在WebSecurityConfigurerAdapter类的config(HttpS原创 2021-09-07 16:09:54 · 2080 阅读 · 14 评论 -
SpringBoot2.x系列教程89--SpringBoot中整合Undertow
89_SpringBoot2.x系列教程89--SpringBoot中整合Undertow作者:一一哥89_SpringBoot2.x系列教程89--SpringBoot中整合Undertow 一. Undertow简介 1. Untertow 概念 2. Untertow 特点 二. Undertow用法 三. Undertow配置详解 一. Undertow简介1. Untertow 概念Undertow 是红帽公司开发的一款基于 NIO 的高性能 We原创 2021-03-09 16:09:00 · 1697 阅读 · 0 评论 -
SpringBoot2.x系列教程90--SpringBoot自定义Starter启动器
90_SpringBoot2.x系列教程90--SpringBoot自定义Starter启动器作者:一一哥90_SpringBoot2.x系列教程90--SpringBoot自定义Starter启动器 一. SpringBoot中的Starter 1. Starter的概念 2. Starter的优点 3. 常用的Starter 4.Starter的组成 5.SpringBoot的AutoConfiguration机制 二.自定义Starter启动器原创 2021-03-09 16:07:02 · 482 阅读 · 0 评论 -
SpringBoot2.x系列教程88--SpringBoot整合SpringSecurity实现认证拦截
SpringBoot2.x系列教程88--SpringBoot整合SpringSecurity实现认证拦截作者:一一哥一. SpringSecurity简介1. SpringSecurity概述Spring Security 是 Spring 社区的一个顶级项目,也是 Spring Boot 官方推荐使用的安全框架。除了常规的认证(Authentication)和授权(Authorization)之外,Spring Security还提供了诸如ACLs,LDAP,JAAS,CAS等高级特原创 2020-05-18 12:14:01 · 1905 阅读 · 0 评论 -
SpringBoot2.x系列教程87--SpringBoot中整合定时任务
SpringBoot2.x系列教程87--SpringBoot中整合定时任务作者:一一哥一. Java中的定时任务1. 前言在实际项目开发中,定时任务的应用场景可以说是非常广泛的,比如某些视频网站,购买会员后,每天会给会员赠送成长值,每月会给会员送一些电影券;再比如要定时生成报表、邮件;定时清理数据;自动将超过24小时的未付款的单改为取消状态,自动将超过14天客户未签收的订单改为已签收状态等。2. 定时任务的实现方式 1.Timer: 这是java自带的java.util.Time原创 2020-05-17 19:17:39 · 1275 阅读 · 0 评论 -
SpringBoot2.x系列教程86--SpringBoot中整合监控功能
SpringBoot2.x系列教程86--SpringBoot中整合监控功能作者:一一哥一. SpringBoot监控功能1. 监控功能简介在之前的系列文章中我们学习了如何进行Spring Boot应用的功能开发,以及如何写单元测试、集成测试等,然而,在实际的软件开发中需要做的不仅如此:还包括对应用程序的监控和管理。我们也需要实时看到自己的应用目前的运行情况,比如给定一个具体的时间,我们希望知道此时CPU的利用率、内存的利用率、数据库连接是否正常以及在给定时间段内有多少客户请求等指标。不原创 2020-05-16 17:12:56 · 1330 阅读 · 0 评论 -
SpringBoot2.x系列教程85--SpringBoot中整合阿里云OSS存储
SpringBoot2.x系列教程85--SpringBoot中整合阿里云OSS存储作者:一一哥一. 阿里云OSS简介1. 存储服务简介我们进行项目开发,很多时候都需要进行文件、图片等的上传,对于很多项目来说,虽然有FastDFS等文件存储服务器技术,但其实我们完全没有必要搭建自己的图片等文件服务器。对一个小型非专业的应用来说,搭建自己的专属文件存储服务器,完全就是浪费,而且也不一定有那样的实力。但是我们项目中经常需要进行头像等其他文件的上传等操作,那么如何实现呢?我推荐首选阿里云存原创 2020-05-14 22:30:18 · 1245 阅读 · 0 评论