![](https://img-blog.csdnimg.cn/f14c42967c6c488db514ebd06c5b8b77.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
SpringBoot
文章平均质量分 82
SpringBoot学习笔记
Gangbb
这个作者很懒,什么都没留下…
展开
-
Springboot项目中获取当前服务端口号
1. 启动时获取@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })public class AdminApplication { public static void main(String[] args) { SpringApplication app = new SpringApplication(AdminApplication.class); Environment原创 2022-03-09 13:33:36 · 6708 阅读 · 1 评论 -
Springboot实现 其他属性条件 校验注解
文章目录1. 使用场景2. 技术实现2.1 实现思路2.2 代码实现2.2.1 引入依赖2.2.2 自定义校验注解2.2.3 校验工具类2.2.4 校验处理逻辑3. 使用示例1. 使用场景例如:当属性condition=1时,某某参数为必填;某某参数为必填且只能为某些值或不能为某些值。支持扩展场景:只允许填入某些值不允许填入某些值如果使用注解的属性是对象,可以控制是否对对象中的属性进行再校验2. 技术实现2.1 实现思路使用Hibernate Validator校验工具,自定义校原创 2022-01-29 17:01:38 · 1720 阅读 · 0 评论 -
SpringBoot项目自定义校验枚举注解
文章目录1. 使用场景2. 技术实现2.1 实现思路2.2 代码实现2.2.1 引入依赖2.2.2 自定义校验注解2.2.3 校验工具类2.2.4 校验处理逻辑3. 使用示例1. 使用场景某接口的入参某属性,只希望为系统中某枚举的中定义过的值。例如:用户类型枚举中定义 10-普通用户 20-管理员 30-游客 40-中级用户 50-高级用户希望某接口的入参 userType 只能填入这几种type支持扩展场景:只允许填入枚举中定义过的某些值不允许填入某些值2. 技术实现2.1原创 2022-01-29 16:15:45 · 3209 阅读 · 0 评论 -
Springboot项目使用smart-doc+Apifox 便捷生成管理接口文档
文章目录1. 前言2. 使用流程3. 使用示例1. 前言相信大家在Java开发中都用过不少接口文档工具,最常见的就是Swagger了。但它有一个不好的缺点就是,想要接口文档清晰和美观需要加入许多声明和注解,代码的侵入性很强。最近在维护一个老的项目,项目中没有用到Swagger,之前前后端的交互用的是Yapi,接口写好了,手动在Yapi上手写一遍文档,真的要吐血,于是决定寻找一款工具可以方便快捷的生成API文档。于是乎百度谷歌各类工具,以下是我尝试过的工具或者平台:可以说市面上常用的都试过了一遍,最后原创 2022-01-19 19:47:14 · 7989 阅读 · 3 评论 -
Springbooot配置logback日志详解及实践
文章目录一、 前言二、使用详解1. logback介绍2. logback配置2.1 基本配置2.2 Logback 配置项详解2.3 Logback配置打印信息着色2.4 不同环境配置不同的日志级别2.5 完整配置示例一、 前言日志框架的选型来说最快的肯定还是log4j2,TPS能提升6倍多。但是2021年12月10日,log4j2又被爆出高危漏洞。(前几个月刚开会说用log4j2,淦!赶紧又换回来了 )看来不愧是SpringBoot默认的日志实现,logback还是相对稳定的。现在还是来详细弄一原创 2021-12-13 19:11:37 · 1603 阅读 · 0 评论 -
Springboot项目定时任务使用(一)
文章目录一、java中定时任务创建的常见方式1. 使用线程创建 job 定时任务2. 使用 TimerTask 创建job定时任务3. 使用线程池创建 job定时任务二、spring task定时任务1. 使用示例2. 任务执行规则说明3. cron表达式详解3.1 使用说明3.2 常用表达式例子4. spring boot实现动态增删启停定时任务5. 总结一、java中定时任务创建的常见方式以下三种方式是java程序中常见的定时任务实现的方式(JDK提供),但一般项目中不直接使用。像是Spring项原创 2021-11-29 15:38:31 · 811 阅读 · 0 评论 -
Spring Boot中异步调用的正确使用姿势(详解)
文章目录1. 概述1.1 简介1.2 @Async失效场景2. 同步与异步调用示例3. @Async异步调用使用详解及优化3.1 当前使用分析3.2 自定义线程池执行异步方法3.3 全局处理异步方法中的异常4. 异步请求与异步调用的区别5. 最后一些思考1. 概述1.1 简介介绍:异步请求的处理。除了异步请求,一般上我们用的比较多的应该是异步调用。通常在开发过程中,会遇到一个方法是和实际业务无关的,没有紧密性的。比如记录日志信息等业务。这个时候正常就是启一个新线程去做一些业务处理,让主线程异步的原创 2021-11-14 19:52:02 · 12496 阅读 · 3 评论 -
Spring Boot中异步请求的使用
文章目录1. 简介2. 实现方式2.1 Servlet2.2 callable2.3 WebAsyncTask2.4 DeferredResult1. 简介同步请求时序图:异步请求时序图:异步请求处理特点可以先释放容器分配给请求的线程与相关资源,减轻系统负担,释放了容器所分配线程的请求,其响应将被延后,可以在耗时处理完成(例如长时间的运算)时再对客户端进行响应。一句话:增加了服务器对客户端请求的吞吐量(实际生产上我们用的比较少,如果并发请求量很大的情况下,我们会通过nginx把请求负载到集群原创 2021-11-14 10:07:39 · 1314 阅读 · 0 评论 -
Springboot项目打包成Docker镜像部署
1. 创建一个springboot项目并创建一个测试controller启动测试,保证没问题:2. 打包应用3. 编写dockerfile需要dockerfile文件语法提示高亮下个idea的docker插件:下载地址:https://plugins.jetbrains.com/plugin/7724-docker/versionsFROM java:8COPY *.jar /app.jarCMD ["--server.port=8080"]EXPOSE 8080E原创 2021-07-15 14:16:00 · 771 阅读 · 0 评论 -
java项目中POJO的理解(含实例)
目录1.首先是百度百科的字面意思2.POJO的类型分类3.对应的实例DODTOBOVO1.首先是百度百科的字面意思2.POJO的类型分类按阿里《Java开发手册–嵩山版》中POJO的解释为 专指只有 setter/getter/toString 的简单类,包括DO/DTO/BO/VO 等。分别解释为:个人理解需要注意的点:DO很多公司也用PO(persistence object, 持久层对象)来表示。类中都定义的是对应数据库中的字段DTO不具体属于哪个层,而是POJO在数据传递中的原创 2021-01-20 09:37:33 · 4566 阅读 · 2 评论 -
SpringBoot系列-- SpringBoot之Devtools热部署
目录1. 项目环境2. 引入依赖和修改配置文件3. 修改Idea配置4. 测试5. 说明1. 项目环境IDEA 2020.1.4Maven 3.6JDK 1.8SpringBoot 2.x项目文件在GitHub(欢迎star⭐):https://github.com/Gang-bb/Gangbb-SpringBoot如有疑问或是建议,欢迎评论区留言或者QQ:9495263652. 引入依赖和修改配置文件 <dependency> <gr原创 2021-01-29 10:57:17 · 1557 阅读 · 0 评论 -
SpringBoot系列-- SpringBoot中使用lombok简化开发
目录1. 项目环境2.添加依赖和安装插件3. 实体类常用注解总结3.1 @Setter、@Getter3.1.1 注解在属性上3.1.2 注解在类上3.1.3 注解对静态属性和final类型属性3.2 @NoArgsConstructor3.3 @AllArgsConstructor3.4 @RequiredArgsConstructor3.5 @ToString3.6 @EqualsAndHashCode3.7 @Data(常用)3.8 @Builder3.9 @Value3.10 @NonNull4.原创 2021-01-29 09:47:55 · 1861 阅读 · 0 评论 -
SpringBoot系列-- SpringBoot之Mybatis Generator生成器使用(多种方式)
目录1. 项目环境2. 引入依赖3.生成基于.xml形式使用mybatis的各层文件3.1 用generatorConfig.xml配置插件生成3.1.1 编写generatorConfig.xml文件3.1.2 关于generatorConfig.xml配置文件的补充说明3.1.3 开始生成文件3.2 使用Idea插件生成3.2.1 better-mybatis-generator插件简介3.2.2 better-mybatis-generator使用3.2.3 功能更强大的MyBatisCodeHelp原创 2021-01-28 15:37:08 · 12461 阅读 · 0 评论 -
SpringBoot系列-- SpringBoot使用原生Swagger管理Restful API
目录1. 项目环境2. 开始整合2.1 引入swagger依赖2.2 配置SwaggerConfig2.3 配置多个API分组2.4 定义实体类3. Controller中实践4. 常用注解整合5. 后话1. 项目环境IDEA 2020.1.4Maven 3.6.6JDK 1.8SpringBoot 2.4.2项目文件在GitHub:https://github.com/Gang-bb/Gangbb-SpringBoot如有疑问或是建议,欢迎评论区留言或者QQ:9495263652原创 2021-01-24 15:39:38 · 183 阅读 · 0 评论 -
SpringBoot系列-- SpringBoot自定义异常类封装
1. 项目环境IDEA 2020.1.4Maven 3.6.6JDK 1.8SpringBoot 2.4.2项目文件在GitHub:https://github.com/Gang-bb/Gangbb-SpringBoot注意:此节内容包含SpringBoot系列-- SpringBoot统一对象返回小节内容2. 对Java异常的一些理解CheckedException: 必须在编码时进行处理,不处理程序是无法通过编译的。可以向上throws抛出或者就地try/catch解决,比原创 2021-01-23 21:56:32 · 705 阅读 · 0 评论 -
SpringBoot系列-- SpringBoot统一对象返回
1. 项目环境IDEA 2020.1.4Maven 3.6.6JDK 1.8SpringBoot 2.4.2项目文件在GitHub:https://github.com/Gang-bb/Gangbb-SpringBoot2.统一返回对象的目的可以给前端人员的返回数据更加统一和言简意赅!如向下面这样:(成功没有数据)(成功有数据)3.处理统一返回对象3.1 定义错误码和信息的枚举以后有什么请求错误统一记录在该枚举下。3.2 定义统一返回对象import com.原创 2021-01-23 21:54:13 · 1410 阅读 · 2 评论 -
SpringBoot系列-- SpringBoot整合SLF4j+log4j2+aop记录web请求
1. 项目环境IDEA 2020.1.4Maven 3.6.6JDK 1.8SpringBoot 2.4.2项目文件在GitHub:https://github.com/Gang-bb/Gangbb-SpringBoot2. 选型思考Java 中比较常用的日志框架:log4j(Log for Java):Apache 的一个开源项目,七种日志级别:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACElogback:是一个很成熟的日志框架,其实 logBa原创 2021-01-23 21:51:18 · 1016 阅读 · 7 评论 -
SpringBoot系列-- SpringBoot整合MyBatis
目录1. 项目环境2. 在项目pom.xml文件中引入依赖3. 准备数据库相关4.基于注解形式使用Mybatis4.1. 创建各层文件4.2.1 Xxx实体类4.2.2 XxxMapper4.2.3 XxxService4.2.4 XxxServiceImp4.2.5 XxxController4.2. 配置文件5. 基于.xml使用Mybatis5.1 XxxMapper文件5.2 XxxMapper.xml文件5.3 配置文件声明XxxMapper.xml文件文件目录1. 项目环境IDEA 20原创 2021-01-23 11:30:18 · 2638 阅读 · 0 评论 -
SpringBoot系列--SpringBoot配置文件和使用配置文件属性
目录1. 首先准备一个新建好的空项目1. 首先准备一个新建好的空项目原创 2021-01-21 10:09:37 · 1336 阅读 · 0 评论 -
SpringBoot系列--新建SpringBoot多模块工程项目
运行环境:IDEA 2020.1.4Maven3.6.6JDK1.81. 新建主Maven项目2. 新建子Module项目2.1 新建SpringBoot项目(api)2.2 新建工具类3. 配置各个模块的pom.xml文件当前目录:3.1 主project文件配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.原创 2021-01-20 20:06:19 · 470 阅读 · 0 评论