![](https://img-blog.csdnimg.cn/2020120700204477.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
SpringBoot
SpringBoot原理及整合各种组件的案例
天乔巴夏丶
这个作者很懒,什么都没留下…
展开
-
SpringBoot整合任务调度框架Quartz及持久化配置
文章目录本篇要点SpringBoot与Quartz单机版快速整合引入依赖创建Job调度器Scheduler绑定自动配置,这里演示SimpleScheduleBuilder手动配置,这里演示CronScheduleBuilderyml配置主启动类测试Quartz持久化配置创建数据库表引入mysql相关依赖配置yml配置数据源创建任务启动测试源码下载参考阅读本文侧重SpringBoot与Quartz的整合,Quartz的基本入门概念不清楚的小伙伴可以看看这篇文章:任务调度框架Quartz快速入门!本篇要原创 2020-12-28 22:41:31 · 834 阅读 · 0 评论 -
SpringBoot事件监听机制及观察者模式/发布订阅模式
文章目录本篇要点什么是观察者模式?发布订阅模式是什么?Spring事件监听机制概述SpringBoot事件监听定义注册事件注解方式 @EventListener定义监听器实现ApplicationListener的方式定义监听器注册事件发布者定义接口主程序类测试接口源码下载参考阅读本篇要点介绍观察者模式和发布订阅模式的区别。SpringBoot快速入门事件监听。什么是观察者模式?观察者模式是经典行为型设计模式之一。在GoF的《设计模式》中,观察者模式的定义:在对象之间定义一个一对多的依赖,当原创 2020-12-21 01:02:44 · 1340 阅读 · 0 评论 -
SpringBoot如何利用Actuator来监控应用?
文章目录Actuator是什么?快速开始引入依赖yml与自动配置主程序类测试Endpoints官方列举的所有端点列表启动端点暴露端点配置端点发现页面跨域支持实现一个定义的端点Health端点设置何时显示信息设置顺序设置响应码自定义健康信息源码下载参考阅读Actuator是什么?官网:Spring Boot Actuator: Production-ready Features先从官网摘几句文绉绉的解释:SpringBoot可以帮助你再将应用程序推向生产环境时对其进行监视和管理。你可以选原创 2020-12-13 12:42:45 · 1173 阅读 · 2 评论 -
SpringBoot整合Spring Data JPA
文章目录本篇要点JPA是啥?Spring Data JPA快速SpringBoot快速整合JPA引入依赖配置ymlddl-auto的几种属性值实体类常见的主键生成策略启动项目,生成表数据访问层测试JPA五、源码下载参考阅读本篇要点简单介绍JPA。介绍快速SpringBoot快速整合JPAJPA是啥?The Java Persistence API is a standard technology that lets you “map” objects to relational da原创 2020-11-28 22:38:22 · 273 阅读 · 0 评论 -
SpringBoot利用AOP巧妙记录操作日志
文章目录本篇要点简单回顾SpringAOP的相关知识点1、AOP关键术语2、通知的五种类型3、切入点表达式execution@annotation4、AOP应用场景快速开始引入依赖定义日志信息封装自定义注解@Log定义测试接口定义切面Aspect与切点Pointcut定义通知方法Advice测试源码下载参考阅读本篇要点简要回顾SpringAOP的相关知识点:关键术语,通知类型,切入点表达式等等。介绍SpringBoot快速启动测试AOP,巧妙打印日志信息。简单回顾SpringAOP的相关知识点原创 2020-11-18 10:57:21 · 875 阅读 · 0 评论 -
SpringBoot中BeanValidation数据校验与优雅处理详解
文章目录本篇要点后端参数校验的必要性不使用Validator的参数处理逻辑Validator框架提供的便利SpringBoot自动配置ValidationAutoConfigurationValidator+BindingResult优雅处理为实体类定义约束注解使用@Valid或@Validated注解发送Post请求,伪造不合法数据Validator + 全局异常处理定义全局异常处理定义接口@Validated精确校验到参数字段定义接口发送GET请求,伪造不合法信息捕获异常,处理结果@Validated和原创 2020-11-18 10:56:36 · 1810 阅读 · 1 评论 -
SpringBoot实现文件上传功能详解
文章目录利用SpirngBoot实现文件上传功能零、本篇要点一、SpringBoot对文件处理相关自动配置二、处理上传文件MultipartFile接口三、SpringBoot+Thymeleaf整合demo1、编写控制器2、编写页面file.html3、编写页面uploadStatus.html4、编写配置5、配置虚拟路径映射6、测试页面四、SpringBoot的Restful风格,返回url五、源码下载六、参考阅读利用SpirngBoot实现文件上传功能零、本篇要点介绍SpringBoot对文件原创 2020-11-18 10:55:48 · 6230 阅读 · 0 评论 -
SpringBoot的外部化配置最全解析!
文章目录SpringBoot中的配置解析【Externalized Configuration】本篇要点一、SpringBoot官方文档对于外部化配置的介绍及作用顺序二、各种外部化配置举例1、随机值配置2、命令行参数配置3、属性文件配置4、指定profile属性5、使用占位符6、加密属性7、使用YAML代替properties8、类型安全的属性配置@ConfigurationPropertie定义一个绑定配置的JavaBean通过@EnableConfigurationProperties注册配置yaml文原创 2020-11-17 10:12:07 · 980 阅读 · 0 评论 -
SpringBoot整合Swagger-ui实现在线API文档
文章目录SpringBoot整合Swagger-ui实现在线API文档本篇要点一、restful风格简单介绍二、SpringBoot与Swagger-ui快速整合1、第一种方式:使用官方依赖2、第二种方式:使用第三方依赖三、swagger-ui的基本注解源码下载参考阅读SpringBoot整合Swagger-ui实现在线API文档Swagger是一款功能强大的api框架,支持在线接口文档的ui界面,还提供了在线测试功能,此外,它还支持流行的Restful风格接口。本篇要点简单介绍restful风原创 2020-11-17 10:11:29 · 224 阅读 · 0 评论 -
SpringBoot快速瘦身,快速部署jar
文章目录本片要点正常打包部署的方式瘦身部署拿到lib目录改变默认的打包方式再次打包上传lib和jar源码下载参考阅读本片要点介绍如何为jar包瘦身,方便部署。正常打包部署的方式之前已经在文章中介绍详细部署的过程:SpringBoot项目部署到Linux服务器并发布。但是,这种做法有一些问题,就是每次上传jar包到服务器的时候都要很久。为什么呢?也许我们只是创建了一个最基本的SpirngBoot项目,也许我们只是写了三四行代码,最后生成的jar包大小也大的离谱,足足有17M,原因在于生成的可执行原创 2020-11-17 10:10:35 · 152 阅读 · 0 评论 -
SpringBoot项目部署到Linux服务器并发布
文章目录本篇要点部署全流程1、配置maven插件2、mvn package或mvn install3、将jar包上传至远程服务器4、在远程服务器上执行jar包参考阅读本篇要点介绍如何一步步将SpringBoot项目部署到远程服务器上。部署全流程本文采用创建可执行jar的方式启动SpringBoot项目。1、配置maven插件 <packaging>jar</packaging> <!--打成jar包 --> <build>原创 2020-11-17 10:09:46 · 207 阅读 · 0 评论 -
SpringBoot整合shiro框架附源码下载
文章目录SpringBoot整合shiro权限管理框架本篇要点一、shiro是什么?用来干什么?二、SpringBoot快速整合shiro导入shiro必要的依赖创建数据源,准备加载用户数据的方法定义核心组件Realm定义shiroConfig,注入核心bean定义登录Controller,理解login的流程定义UserController,理解权限注解的使用三、认证流程四、授权流程五、拦截器机制六、权限注解源码下载参考阅读SpringBoot整合shiro权限管理框架本篇要点shiro简介及核心原创 2020-11-17 10:06:44 · 369 阅读 · 0 评论 -
SpringBoot整合Logback日志框架配置全解析
文章目录本篇要点一、Logback日志框架介绍二、SpringBoot与Logback1、默认日志格式2、控制台输出3、文件输出4、日志级别5、日志组6、自定义log配置三、logback-spring.xml自定义注意事项配置文件下载参考阅读本篇要点介绍什么是Logback介绍SpringBoot中对logging默认的配置介绍自定义logback-spring.xml的注意点一、Logback日志框架介绍SpringBoot使用 Commons Logging 进行所有内部日志的记录,但原创 2020-11-17 10:04:54 · 156 阅读 · 0 评论 -
SpringBoot整合Thymeleaf模板引擎
文章目录零、本片要点一、Thymeleaf简介二、快速启动三、源码下载四、参考阅读零、本片要点介绍Thymeleaf的概念,理解Thymeleaf的便利且强大。介绍如何快速整合SpringBoot和Thymeleaf。介绍自动配置原理。一、Thymeleaf简介Thymeleaf是适用于Web和独立环境的现代服务器端Java模板引擎,能够处理HTML,XML,JavaScript,CSS甚至纯文本。Thymeleaf的主要目标是提供一种优雅且高度可维护的模板创建方法。拿Html为例,它支持原创 2020-11-17 10:03:45 · 163 阅读 · 0 评论 -
SpringBoot中的全局异常处理
文章目录本篇要点一、SpringBoot默认的异常处理机制二、错误页面的定制三、自定义异常数据四、自定义异常视图五、@ControllerAdvice注解处理异常源码下载参考阅读本篇要点介绍SpringBoot默认的异常处理机制。如何定义错误页面。如何自定义异常数据。如何自定义视图解析。介绍@ControllerAdvice注解处理异常。一、SpringBoot默认的异常处理机制默认情况下,SpringBoot为以下两种情况提供了不同的响应方式:Browser Clients浏览器客原创 2020-11-17 10:01:20 · 154 阅读 · 0 评论 -
SpringBoot整合H2内存数据库快速启动测试
SpringBoot整合H2内存数据库快速启动测试本文代码样例均已上传至:https://gitee.com/tqbx/springboot-samples-learn/tree/master/spring-boot-h2参考:Springboot和内存数据库H2的使用教程内存数据库顾名思义:就是将数据存放载内存中,直接操作的数据库。相对于磁盘,内存的数据读写速度要高出几个数量级,将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能。优点如下:零项目配置或基础设施易于学习,单元测试H原创 2020-11-17 10:00:00 · 297 阅读 · 0 评论 -
SpringBoot整合FreeMarker模板引擎
文章目录FreeMarker是什么?快速开始模板一览常用指令条件指令:if、elseif、elselist指令include指令内建函数处理不存在的变量自定义指令使用macro定义宏使用TemplateDirectiveModel扩展。本文样例已上传至码云:https://gitee.com/tqbx/springboot-samples-learn/tree/master/spring-boot-freemarker详细文档地址:http://freemarker.foofun.cn/index.原创 2020-11-17 09:50:03 · 227 阅读 · 0 评论 -
The ‘Access-Control-Allow-Origin‘ header contains multiple values ‘*, *‘, but only one is allowed.
产生问题的原因:进行了多次跨域配置,比如使用Gateway网关已经配置过跨域选项,Controller上仍然使用@CrossOrigin注解,就会产生该问题。解决方法:去掉其中一个配置就行。原创 2020-08-03 21:45:23 · 1037 阅读 · 0 评论 -
Cache抽象理解及SpEL及常用注解
缓存的工作流程先从缓存中读取数据,如果命中则直接返回结果,如果没有再从慢速设备上读取实际的数据,之后数据存入缓存。我们常把经常读不经常写,且对安全性要求不高的数据存入缓存,让数据离消费者更近。Spring3.1起,提供了注解Cache的支持,且提供了Cache的抽象。常用接口及注解Cache接口统一了缓存的操作,如put,get,evict,clear等。Spring也提供了许多缓存的实现,如RedisCache,EhCacheCache,ConcurrentMapCache等。Cac原创 2020-07-30 16:01:30 · 833 阅读 · 0 评论 -
解决大文件上传的方法总结
Tomcat文件上传会有默认大小限制,如果需要上传较大文件,可以设置:spring: servlet: multipart: # 最大上传单个文件大小,默认1M max-file-size: 1024MB # 最大总上传的数据大小,默认10M max-request-size: 1024MB如果使用nginx做请求转发,那么nginx的默认上传文件大小配置也需要修改client_max_body_size 1024m;,否则会出现413 Re原创 2020-07-29 15:50:13 · 342 阅读 · 0 评论 -
Springboot整合FastDFS
FastDFS码云地址:https://gitee.com/fastdfs100/fastdfs?_from=gitee_searchFastDFS是一款开源的分布式文件系统,功能主要包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了文件大容量存储和高性能访问的问题。FastDFS特别适合以文件为载体的在线服务,如图片、视频、文档等等。FastDFS作为一款轻量级分布式文件系统,版本V6.01代码量6.3万行。FastDFS用C语言实现,支持Linux、FreeBSD、MacOS等类UN原创 2020-07-21 13:54:09 · 243 阅读 · 0 评论 -
Spring-Security学习笔记【二】Authentication认证
文章目录SpringSecurity中的认证:Authentication简单案例典型web应用验证授权过程ExceptionTranslationFilterAuthenticationEntryPointAuthentication MechanismStoring the SecurityContext between requestsSpringSecurity中的认证:Authentication我们先来考虑一个最正常不过的用户信息验证场景:提示用户使用用户名和密码登录。系统(成功)验证原创 2020-07-21 13:52:08 · 1520 阅读 · 0 评论 -
Spring-Security学习笔记【一】核心组件
一、Spring-Security前瞻Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架。它是保护基于spring的应用程序的事实标准。Spring Security是一个重点为Java应用程序提供身份验证和授权的框架。与所有Spring项目一样,Spring Security的真正强大之处在于它可以很容易地扩展以满足定制需求。二、特点描述Comprehensive and extensible support for both Authentication and A原创 2020-07-21 13:51:37 · 297 阅读 · 0 评论 -
Springboot整合Swagger-ui实现在线API文档
Springboot整合Swagger-ui实现在线API文档参考:http://www.macrozheng.com/#/architect/mall_arch_02https://doc.ruoyi.vip/ruoyi-vue/document/xmjs.html#%E5%90%8E%E7%AB%AF%E6%8A%80%E6%9C%AF常用注解@Api:用于修饰Controller类,生成Controller相关文档信息@ApiOperation:用于修饰Controller类中的方法,生原创 2020-07-21 13:50:06 · 201 阅读 · 0 评论 -
SpringBoot整合RabbitMQ以及Rabbit队列学习
文章目录RabbitMQ的相关概念RabbitMQ的几种模式Exchange的四种类型Linux系统上Rabbitmq的安装RabbitMQ的Web界面操作快速体验参考链接RabbitMQ的相关概念AMPQ:Advanced Message Queue Protocol,RabbitMQ是erlang开发的AMPQ的实现。Message:消息,不具名,由消息头(由路由键routing-key,优先权priority,持久性存储delivery-mode等可选属性构成)和消息体(不透明)组成。Pu原创 2020-06-25 15:19:47 · 514 阅读 · 0 评论 -
SpringBoot2.x踩坑集合第二弹
文章目录一、Failed to bind properties under 'spring.datasource' to javax.sql.DataSource二、连接数据库出现The server time zone value '�й���ʱ��' is unrecogni等问题的解决方案三、SpringBoot2.x版本自动建表四、Springboot与Mybatis整合相关配置问题(以驼峰命名为例)一、Failed to bind properties under ‘spring.dataso原创 2020-06-04 11:25:56 · 356 阅读 · 0 评论 -
SpringBoot快速入门学习
文章目录一、快速入门1. 创建项目1. spring initializr创建2. IntelliJ IDEA创建2、编写第一个测试案例二、pom.xml依赖三、主程序类分析@SpringBootApplication@SpringBootConfiguration@EnableAutoConfiguration@AutoConfigurationPackage一、快速入门1. 创建项目想要快速建立一个SpringBoot项目,有很多种方法,本文主要总结两种比较常用的方法,突出一个快字。1. spr原创 2020-05-19 18:23:38 · 335 阅读 · 0 评论 -
SpringBoot2.x入门踩坑集合
文章目录一、Error:(8,26) java: 编码EUC_CN的不可映射字符二、Web server failed to start. Port 8080 was already in use.(springboot解决8080端口被占用的方法)二、启动SpringBoot的可执行jar 报错:target\spring-boot-hello-1.0-SNAPSHOT.jar中没有主清单属性四、IDEA解决国际化中文乱码问题五、日期格式转换问题(H5日期控件)六、Rest风格请求之hiddenHttpM原创 2020-05-17 21:00:20 · 402 阅读 · 0 评论