Skip to content

lyb-geek/springboot-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

springboot实战系列暂时先更新到这边,下边是对之前springboot实战文章做一个汇总

码云同步地址:https://gitee.com/lybgeek/springboot-learning

1、配置篇

springboot实战之自定义自动配置

springboot实战之读取自定义配置文件

springboot实战之整合配置中心实现动态刷新(Apollo篇)

聊聊如何将数据同步到apollo配置中心

聊聊springboot项目脱离配置中心如何实现属性动态刷新

2、驱动篇

springboot实战之事件驱动模型

springboot实战之stream流式消息驱动

3、ORM整合篇

springboot实战之ORM整合(mybatis篇)

springboot2结合mybatis拦截器实现主键自动生成

mybatis-plus多租户使用采坑记

如何解决mybatis-plus自动填充字段不生效问题

mybatis-plus如何禁用一级缓存

springboot实战之ORM整合(JPA篇)

4、数据库性能提升篇

springboot实战之mysql读写分离

springboot实战之mysql分库分表

如何利用mysql5.7提供的虚拟列来提高查询效率

5、nosql整合篇

springboot实战之nosql整合(mongodb篇)

springboot实战之nosql整合(redis篇)

springboot实战之nosql整合(elasticsearch7.3版本)

springboot实战之mongodb事务支持

聊聊如何基于spring @Cacheable扩展实现缓存自动过期时间以及自动刷新

聊聊如何利用redis实现多级缓存同步

6、文档处理篇

springboot实战之office文档在线预览

springboot实战之文件分片上传、断点续传、秒传

7、接口调用、接口文档管理篇

springboot实战之常用http客户端整合

springboot实战之swagger整合

8、定时任务调度篇

如何通过编码的方式手动触发xxl-job执行器

9、运维监控篇

springboot实战之prometheus监控整合

springboot实战之方法级别粒度动态限流降级(单机版)

聊聊springboot项目如何实现自定义actuator端点

聊聊如何通过自定义注解实现springmvc和sentinel整合

聊聊如何利用p6spy进行sql监控

聊聊如何解决官方提供的onpremise项目安装sentry速度过慢问题

聊聊业务项目如何主动感知mysql是否存活

聊聊使用错误采集平台sentry踩到的坑

聊聊如何玩转spring-boot-admin

聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用

10、部署篇

springboot实战之docker部署

springboot项目在docker容器中如何优雅关闭

聊聊部署在docker容器里面的springboot项目如何启用arthas

聊聊如何将gitlab ci的环境变量透传给k8s deployment.yaml

聊聊如何验证线上的版本是符合预期的版本

聊聊基于docker部署的mysql如何进行数据恢复

记一次部署在docker环境项目发送邮件出现No appropriate protocol

聊聊如何在docker环境中配置hosts

聊聊如何利用ingress-nginx实现应用层容灾

聊聊gitlab ci如何构建以时间为版本号的docker镜像

11、安全篇

如何使用自定义类加载器防止代码被反编译破解

聊聊springboot项目数据库密码如何加密

聊聊如何自定义数据脱敏

聊聊如何进行代码混淆

推荐一款代码依赖包安全漏洞检查插件

12、微服务篇

聊聊如何对eureka管理界面进行定制化改造

聊聊因不恰当使用alibaba sentinel而踩到的坑

聊聊如何在spring事务中正确进行远程调用

聊聊如何根据环境动态指定feign调用服务名

聊聊springcloud项目同时存在多个注册中心客户端采坑记

springcloud中feign的@FeignClient应该写在哪里?

springcloud本地开发的微服务如何调用远程k8s的微服务

记一次使用nacos2踩到的坑

聊聊使用@RefreshScope与nacos2整合踩到的坑

聊聊如何利用apollo与druid整合实现数据源动态热切

聊聊如何基于eureka元数据扩展namespace功能

聊聊不同集群的微服务如何通过feign调用

聊聊springcloud如何与k8s configMap整合实现配置动态刷新

聊聊在集群环境中本地缓存如何进行同步

聊聊在springcloud gateway如何获取请求体

聊聊如何利用springcloud gateway实现简易版灰度路由

记一次openfeign反序列化异常复盘

13、自定义SPI篇

聊聊基于jdk实现的spi如何与spring整合实现依赖注入

聊聊如何实现一个支持键值对的SPI

聊聊如何实现一个带有拦截器功能的SPI

聊聊自定义实现的SPI如何与spring进行整合

聊聊自定义SPI如何使用自定义标签注入到spring容器中

聊聊自定义SPI如何与sentinel整合实现熔断限流

自定义SPI使用JDK动态代理遇到UndeclaredThrowableException异常排查

再聊SPI机制

14、项目构建管理篇

聊聊项目打包发布到maven私仓常见的几种方式

maven如何动态统一修改版本号

maven依赖冲突以及解决方法

聊聊如何自定义实现maven插件

聊聊springboot项目引用第三平台私有jar踩到的坑

聊聊如何修复springboot使maven-resources-plugin占位符失效问题

聊聊如何避免多个jar通过maven打包成一个jar,多个同名配置文件发生覆盖问题

聊聊maven指定version区间的妙用

15、学习成长篇

记一次gitlab代码仓清空还原复盘

聊聊读源码这件事

记一次自定义starter引发的线上事故复盘

16、业务项目扩展篇

聊聊如何让你的业务代码具有可扩展性

聊聊如何利用管道模式来进行业务编排(上篇)

聊聊如何利用管道模式来进行业务编排(下篇)

聊聊那些年我们实现java AOP几种常见套路

聊聊如何利用spring插件来实现策略模式

聊聊如何利用服务定位器模式按需返回我们需要的服务实例

17、消息队列

springboot结合kakfa演示消息队列的消费幂等性如何保证

spring kafka之如何批量给topic加前缀

聊聊如何实现一个带幂等模板的kafka消费者监听

聊聊在springboot项目中如何配置多个kafka消费者

18、K8S

记一次通过K8S ingress访问业务服务出现404问题

聊聊如何在K8S中实现会话保持

聊聊部署在K8S的项目如何获取客户端真实IP

ingress-nginx常用注解指南

云原生时代开发提效神器-Nocalhost

19、测试篇

聊聊springboot项目如何利用jmh来进行基准测试

聊聊如何利用Testcontainers进行集成测试

20、问题排查篇

聊聊在idea dubug模式下,动态代理类出现的null现象

聊聊使用lombok @Builder踩到的坑

类实例对象的class类型却不属于该类,何解?

排查not eligible for getting processed by all BeanPostProcessors

如何解决springboot参数传中文乱码

spring动态注册bean会使AOP失效?

聊聊缓存布尔值踩到的坑

记一次判断值是否存在遇到的神奇问题

记一次因@Async引发的程序bug

记一次springboot项目结合arthas排查ClassNotFoundException问题

记一次使用spring javaconfig踩到的坑

记一次springboot项目自定义HandlerMethodArgumentResolver不生效原因与解法

记一次springboot通过jackson渲染到前端,出现大写字母变成小写问题

聊聊springboot自动装配出现的TypeNotPresentExceptionProxy异常排查

记一次请求接口出现400响应码的诡异错误实录

记一次java进程频繁挂掉问题排查修复

记一次使用spring事件机制失效排查修复

redisson序列化采坑那些事儿

记一次unable to find valid certification path to requested target排查

聊聊springboot项目出现同名bean异常报错如何修复

21、其他

springboot实战之创建一个支持平滑关闭的非web项目

如何用一行代码实现excel导入导出

springboot之优雅处理返回值

如何通过aop+spel表达式玩转出不一样的切面实现

如何低侵入的记录调用日志

聊聊如何把第三方服务注册到我们项目的spring容器中

聊聊spring事务在异常场景下发生不按套路出牌的事儿

聊聊spring bean名称命名的那些事儿

聊聊springboot项目全局异常处理那些事儿

spring事务失效的几种场景以及原因

聊聊如何让springboot拦截器的执行顺序按我们想要的顺序执行

两组数据量相对大时,如何高效进行比对

聊聊springboot项目如何优雅的修改或者填充请求参数

聊聊如何运用JAVA注解处理器(APT)

聊聊聊如何通过APT+AST来实现AOP功能

聊聊如何利用wrk进行压测初探

聊聊spring项目中如何动态刷新bean

聊聊项目中如何实现请求聚合

聊聊如何感知项目引入哪些功能特性

聊聊如何利用spring实现服务隔离

聊聊多个节点实例数据同步如何触发

聊聊多层嵌套的json的值如何解析/替换

聊聊如何实现可插拔AOP

聊聊如何实现动态加载spring拦截器