Java 笔记
白天
夜间
首页
下载
阅读记录
书签管理
我的书签
添加书签
移除书签
Spring Event处理业务解耦
浏览
79
扫码
分享
2023-03-25 23:30:59
若有收获,就点个赞吧
0 人点赞
上一篇:
下一篇:
DevelopmentsTools-Java开发工具包
JDK
Window上JDK安装配置
Linux(CentOS7.3)上JDK的下载与安装
JDK安全策略包
Version Controller-版本管理
Git
常用的Git 知识点整理
Git的安装使用
Git的常用命令
git add .,git add -A,git add -u,git add * 的区别与联系
Git 常用命令分类整理
Git 常用操作命令清单
Git及时自救指南
Git常用命令简表
Git操作命令
Git高级命令
Git配置命令的别名
Git开发中的规范-分支管理/Git Hooks
Git 实用技巧记录
项目中的 Git 使用规范
Git 核心操作图解
45 个 Git 经典操作场景
不小心将测试代码提交到生产环境的解决方案
Git 自动变基
合并代码用git merge还是git rebase
不切换 Git 分支在多个分支上工作
Git提交添加的emoji图标
Git本地配置多远程仓库
Git 基本原理介绍
Git 工作原理
4个提高效率的GitHub技巧
Github代码clone速度慢的解决办法
GitHub上传超过100M大文件的方法
Github代码fork之后与原仓库进行同步
Build Tools-构建工具
Maven
WIndow安装Maven以及环境变量配置使用
Linux(CentOS7.3)安装配置Maven
Maven常用命令整理
Maven 的 settings.xml 配置文件
Maven多仓库配置
Maven基本概念
Maven依赖下载失败的问题总结分析
Maven Deploy时报错
Maven使用profile实现多套环境变量
mvnd—更快的Maven
优雅的替换第三方依赖中的类
Gradle
Gradle安装以及环境变量配置-Window
Gradle笔记
7 个Gradle 实用技巧
IDEA
20 款 IDEA 主题
IDEA快捷键指南-Window版
IntelliJ IDEA 常用快捷键指北 - Mac版本
IDEA全局统一编码设置
IDEA自动补全功能
IDEA的5大调试技巧
IDEA的Debug技巧
IDEA中Http Client的使用
IDEA 插件大汇总
常用IDEA效率插件
IDEA的Docker插件连接Docker Server进行镜像容器的管理
IDEA时序图插件
一键转换DTO、VO、BO、PO、DO的IDEA插件
使用IDEA Plugins-Easy Code生成数据表对应的实体类、Dao层、Mapper映射文件、Service层以及Controller层
IDEA使用问题集合
IDEA开启Run Dashboard
IDEA的插件导致Mapper映射文件不能输入的问题
IDEA测试类的Scanner不能键入值的问题
IDEA运行Main主类显示命令行太长
IDEA中Maven管理的JavaWeb项目找不到jar包的解决方案
IDEA开发个性化配置Setting及插件Plugins
IDEA下载以及学生认证/破解
IDEA 的 debug 实现原理分析
IDEA插件开发
IDEA插件开发
开发一个 IntelliJ IDEA 插件
IntelliJ IDEA 云端编码功能
反编译工具—jadx
Java
Notes
Java基本数据类型以及包装类型的常量池技术
this和super有什么区别?this能调用到父类吗?
Java关键字
static关键字
Java关键字transient
Java关键字——instanceof
Java关键字——native
Object类
五种创建Java对象的方法
Java常用类总结
Java中四种创建对象的方式
Java中new一个对象的流程
Java中clone()和new效率比较
String-字符串常量池与String.intern()
String类的不可变性
String长度有限制吗?是多少?
Java 中 String 字符串可以有多长?65535?
toString()、String.valueOf、(String)强转,有什么区别
Java 字符串格式化
反射和多态的实现原理详解以及区别
深入理解浅拷贝和深拷贝
理解深浅拷贝、Immutable、保护性拷贝
JavaBean为什么要重写hashCode()方法和equals()方法及如何重写
重写 equals 时为什么一定要重写 hashCode?
为什么重写equals必须重写hashCode
Java中对象的hashCode值生成方式和对象的内存地址的关系
深入研究Java一致性Hash算法
Java序列化和反序列化
序列化
序列化和反序列化的概念及操作
Java序列化与反序列化避坑指南
序列化/反序列化中存在的问题
Java序列化的几种方式对比
Java序列化和反序列化为什么要实现Serializable接口
关于序列化/反序列化中的细节问题
什么是序列化?常见的序列化协议有哪些?
Java 反序列化漏洞
Java中的重写
Java 中的枚举
Java 枚举7种常见用法
使用枚举实现“状态”转换限制
集合
并发容器详解
Java基础笔记-集合
Java List复制:浅拷贝与深拷贝方法及区别
List去除重复数据的五种方式
List 去重的 6 种方法
List 根据对象的属性去重
Java数组转List的三种方式及对比
Java模拟 Arrays.sort 实现自定义排序
ArrayList
List中remove()方法的陷阱
Map集合遍历的方式
Map 集合在Java8中新增的一些方法
Map -> HashMap
HashMap分析
Hash碰撞是什么?如何解决?
浅析HashMap原理
JDK1.8中HashMap如何应对hash冲突
HashMap源码分析
为什么 HashMap 的加载因子是0.75?
HashMap 的 hash 方法原理
JDK7和JDK8的HashMap的区别
HashMap及LinkedHashMap
HashMap 和 TreeMap比较
ConcurrentHashMap
ConcurrentHashMap是如何保证线程安全的?
ConcurrentHashMap内部实现
ConcurrentHashMap中十个提升性能的细节
Java中的5大队列
Java 集合框架之 Queue 接口及 PriorityQueue
阻塞队列LinkedBlockingQueue和ArrayBlockingQueue剖析
ArrayBlockingQueue与LinkedBlockingQueue
Java并发队列原理剖析
BlockingQueue
无锁队列Disruptor原理解析
Collections工具类的用法总结
Java中List排序的3种方法
使用 Lambda 表达式实现超强的排序功能
Java IO
Java IO总结
IO 关闭操作、关闭流方法是否有顺序
Java IO基础知识
Java IO、NIO、AIO详解
阻塞、非阻塞、多路复用、同步、异步、BIO、NIO、AIO
传统BIO的局限性
BIO、NIO和多路复用器的关系
BIO、NIO、AIO的区别
IO 模型
Java NIO 底层原理
1.NIO和IO的区别
2.缓冲区Buffer
3.通道Channel
深入分析Channel和FileChannel
4.阻塞与非阻塞
5.DatagramChannel
6.Pipe管道
Java NIO 2.0
跨进程文件锁:FileLock
Java NIO 技术汇总
【NIO】— ServerSocketChannel 的缺陷
InputSteam转String
文件写入的6种方法对比
Pipeline设计模式
Java 中的内存映射(mmap)
零拷贝详解
异常处理
Java异常详解及如何处理
处理 Exception 最佳实践
Java异常
jdk7以后的异常处理try-with-resource关闭资源
try-catch-finally使用中的问题总结
Java异常处理的十个建议
Java注解-@Annotation
自定义注解
@SafeVarargs注解的使用说明
Java中的18 把锁
Java中的锁
Java锁机制
循序渐进学习 Java 锁机制
悲观锁、乐观锁、分布式锁的使用场景以及使用技巧
Java中可中断锁的作用以及实现
死锁的 4 种排查工具
Java锁机制之LockSupport工具
LockSupport的park和unpark
LockSupport 线程工具类
为什么要用读写锁?它有什么优点?
Java中的反射机制
浅谈 Java 反射技术
Java反射知识点总汇
Java中的反射
理解Class类并获取Class实例
Java反射机制的应用场景
JDK动态代理
动态代理实现原理分析
什么是动态代理
动态代理与静态代理区别
Cglib 与 JDK动态代理
依赖传递的三种方式
Java泛型
深入理解 Java 泛型
Java 泛型 T,E,K,V,?
泛型的类型擦除
为何说 Java 泛型是伪泛型?
Java 接口的演变史
JDK中UUID的底层实现
Java中的BigDecimal
BigDecimal的五个坑
为什么不推荐使用 BigDecimal 的 equals 方法做等值比较
StreamAPI 处理 BigDecimal 的 add 操作
BigDecimal精度丢失
JNI:Java代码调用本地代码
JNI:操作字符串String
JNI:操作数组
JNI:全局引用&局部引用&弱全局引用
多线程与高并发
并发编程总结
Java并发编程
Java虚拟线程(协程)
Java协程
Java开发中多线程与高并发需要注意的 15 个细节
Java多线程简单入门
多线程的一些常见知识点
进程、线程、进程池、进程三态、同步、异步、并发、并行、串行
Java线程状态转换
线程状态变化涉及的常用 API
线程上下文切换
JAVA内存模型与线程
Java线程通信之wait/notify机制
多线程间的5种通信方式
两个线程进行数据交换
Java 是如何实现线程间通信
Java中如何保证线程安全性
保证线程安全的11个小技巧
线程安全问题的解决方案
Java 实现线程安全的三种方式
线程安全问题
如何保证线程安全
五种线程安全类型
多线程会遇到的问题总结
如何中断一个线程
如何"优雅"地终止一个线程?
Java 线程中断
如何停止一个正在运行的线程
Java并发编程知识点梳理
Java并发包中原子操作类原理剖析
守护线程 与 非守护线程 的区别
Java JUC总结
并发编程的10个坑
并发编程的12种业务场景
ThreadLocal详解
ThreadLocal正确使用方式
并发编程和ThreadLocal
ThreadLocal使用与原理
ThreadLocal 11连问
ThreadLocal 的原理及常见问题
ThreadLocal内存泄漏
比ThreadLocal 更快的工具
Netty的FastThreadLocal到底有多快?
FastThreadLocal
ThreadLocal源码解读
volatile
volatile关键字
深入理解 volatile 关键字
volatile 保证可见性的原理分析
volatile关键字理解与应用场景
JAVA 中的 volatile 关键字的理解
停止线程的几种方式对比
如何正确的停掉线程?
深入理解Java-Condition
Condition实现原理
线程同步辅助工具类CountDownLatch,CyclicBarrier,Semaphore的使用
多个线程之间协同工作
CyclicBarrier和CountDownLatch的用法与区别
Semaphore
Java高并发编程基础三大利器之CyclicBarrier
并发工具类Phaser、Exchanger的使用
Semaphore 信号量限流
JUC 常用 4 大并发工具类
JUC 中 4 个常用的并发工具类
JDK1.8线程池创建的几种方式
线程池有哪些状态?状态是如何转换的?
线程池的几种创建方式
线程池知识点总结
Java线程池基础
线程池
线程池大小和线程数量的设置
Java线程池的实现原理
Java 线程池的实现原理
ThreadPoolExecutor 深入解析
线程池7个参数的含义
Executors中的线程池
正确创建线程池的方式
使用ThreadPoolExecutor创建线程池的方式替代Executors
五种线程池,四种拒绝策略,三种阻塞队列
线程池 ThreadPoolExecutor 解读
如何优雅的自定义 ThreadPoolExecutor 线程池
线程池如何重复利用空闲的线程来执行任务的原理分析
线程池源码分析
Java 线程池的误区
线程池执行过程中遇到异常会发生什么,怎样处理
线程池提交任务发生异常怎么处理
关闭线程池:shutdown 和 shutdownNow 的区别
5种方法判断线程池是否全部完成
线程池监控
为什么需要线程池?什么是池化技术?
线程池 FutureTask计算多任务
异步编程利器:CompletableFuture详解
CompletableFuture实现原理和使用场景
CompletableFuture
Java CompletableFuture的20个使用案例
三个线程顺序执行的几种实现方式
4种方法实现多线程按着指定顺序执行
高性能解决线程饥饿的利器 StampedLock
JAVA中写时复制Copy-On-Write
线程并发安全中必须掌握的CopyOnWriteList
重入锁
Java8改进读写锁StampedLock详解
ReentrantLock加锁源码浅析
ReadWriteLock读写之间互斥性验证
读写锁
CopyOnWriteArrayList
参照CopyOnWriteArrayList实现CopyOnWriteHashMap
写时复制(Copy-On-Write)在Java中的应用
CAS原理
CAS
Unsafe 类
Unsafe类简介
Unsafe工具类的一些实用技巧
Java中Unsafe类的原理与使用案例
Java 中的 Unsafe 和 CAS
CAS算法与Java原子类
AtomicInteger保证线程安全原理分析
LongAdder的使用
LongAdder的神奇之处
从 Atomic 到 CAS
CAS详解
Java并发之AQS原理剖析
AQS及其组件的核心原理
AQS
并发编程的AQS
AQS中公平锁和非公平锁区别
15张图理解Java AQS
AQS的实现原理(state状态变量、同步队列、Condition等待队列)
AQS原理
AQS 自定义同步锁
JUC之AQS机制
Synchronized
Synchronized锁的各种用法及注意事项
深入理解ReentrantLock
synchronized 中的 4 个优化
synchronized 加锁 this 和 class 的区别
synchronized的实现原理
Synchronized 的 8 种用法
Synchronized 底层实现
synchronized底层是如何实现的?
为什么wait和notify必须放在synchronized中?
为什么 wait/notify 必须与 synchronized 一起使用?
从 JMM 透析 volatile 与 synchronized 原理
对volatile的理解--从JMM以及单例模式剖析
JMM & volatile—深入剖析
用Thread中的UncaughtExceptionHandler来处理未捕获的异常
多线程事务控制
Java各版本新特性预览
Java5-7新特性
Java8新特性
Lambda表达式
使用 Lambda 表达式实现超强的排序功能
Java Lambda 表达式源码分析
函数式接口
函数式接口
JDK源码解析——深入函数式接口
Java8中的函数式编程
用Java8中的“Function”消灭if...else
方法引用、构造器引用及数组引用
Java8通用Builder创建对象
Stream流
Java8 Stream常用方法大合集
32个Java Stream案例
Java8 Stream20个集合筛选、归约、分组、聚合实例
Java8高级核心Collection收集器详解
Java 8 并行流
JDK8 Stream操作 collectingAndThen:根据对象的属性去重
Stream.toList()和Collectors.toList() 性能比较
Java8 Stream 数据流大数据量下的性能效率分析
Java8 中 Map的merge() 方法的用法
Java8通过Stream流实现List转map 、分组、过滤等操作
Java8 中的 ParallelStream 并行流
Java8 Stream 排序以及自定义比较器
for、foreach、stream 性能比较
Java8中数据过滤 removeIf() 和 filter() 方法的区别
Java8 中通过 Stream 对列表进行去重的几种方法
Java8 Stream流递归搞定遍历树形结构
Java8 Stream 将List集合转化为树形结构
Stream 实现原理
Java 8 Stream流原理
Stream的实现原理
接口中的默认方法与静态方法
Java中的默认接口方法和静态接口方法
时间API
Java时间格式化
Java8日期处理工具函数
LocalDate & LocalDateTime 常用 API 互相转换
Java8中不常用的时间API
Optional类
Java8 用 Optional 巧妙解决 NPE
Optional使用示例
Optional判空
注解之重复注解和类型注解
JUC线程高级
JDK8的CompletableFuture
Java 8 compute
Java 8 新特性:Comparator.naturalOrder | 自然排序
Base64支持
Nashorn JavaScript 引擎
Java9新特性
JDK9 JShell
Java10新特性
Java11新特性
Java12新特性
Java13新特性
Java14新特性
Java15新特性
Java15中的隐藏类
Java16新特性
Java17新特性
快速搭建Java 17环境并玩转Record特性
Java类(接口)的新类型——密封类
Java中的record关键词
Java 17中的新特性:“密封类”
Java 18新特性
Java开发规范/习惯
项目开发中的统一处理:异常、枚举信息、日志
使用 断言 和 枚举类 相结合的方式,进行统一异常处理
jdk7以后的异常处理try-with-resource关闭资源
Java 命名规范
Java细节总结-开发选择变量相关
不可随便使用的全局变量
在设计原则中,为什么反复强调组合要优于继承
Java开发中的PO、VO、DAO、BO、DTO、POJO
《Effective Java》—Java代码编写技巧
Java开发编码细节-37条
Java开发规范
44条Java代码优化细节
Java性能优化的50个细节
常见的for循环优化方式
Java常用重构技巧
Java业务开发常见错误100例
Java 程序员常犯的 10 个 SQL 错误
DevNotes
Java 应用程序是如何在堆之外丢弃垃圾?
高并发场景下的 httpClient 优化使用
Java中的对象不再使用时一定要赋值为Null
时间问题
后端接口数据格式化处理
YYYY-MM-DD时间日期格式转换
Web开发中的时区问题
4 种统计代码执行耗时的方法
Java:计算代码耗时的5种方法
Java进阶:Map 函数式接口代替策略模式
有用但不为大家所熟知的 Java 特性
Java 的可变参数的使用
Java生成序列号/订单号
Java中对一个对象进行深拷贝
优雅的解决空指针
Java 刷题必须了解的 API
Java中Comparable和Comparator接口的区别
Java中自然排序和比较器排序
Java中七个潜在的内存泄露风险
为什么 StringBuilder 不是线程安全的
为什么Java中1000==1000为false而100==100为true?
Java 自带的序列化存在的问题
JDK 序列化中碰到 serialVersionUID 不一致问题的解决办法
Java中含有泛型的 JSON 反序列化问题
Java网络编程中控制上传和下载速度
正确的创建和销毁Java对象
Java 创建对象的 x 操作
JDK动态代理
Java 中对象池的本质
Java操作Shell脚本
SimpleDateFormat线程不安全的5种解决方案
Java中的Socket网络编程
Java SPI 机制详解
Java SPI 机制
JDK/Dubbo/Spring 三种 SPI 机制对比分析
统计代码耗时的4种方法
Java开发中jar包调试技巧
Java日常开发的21个坑
电商金额计算的 4 个坑
为什么不建议用a.equals(b)判断对象相等
JDK方法的坑
Java 生成随机数的 6 种方式
ThreadLocalRandom
高并发环境下安全的生成随机数
定时任务实现原理分析
使用StringJoiner拼接字符串
Java8的StringJoiner
Java优雅的判空
Java异常处理
Java判断整数溢出
Java中的Format类的使用
JDK里的“机器人”类库
Java安全之Javassist动态编程
Java 中修改语法树
Java工具类
Base64编码
17个提升开发效率的“轮子”
11 个开源的 Java Socket 框架
52类110个主流Java组件和框架
Java 常用的 14 个类库
Java生成图形验证码
SpringBoot kaptcha 生成验证码
Java实现图形验证码-支持gif、中文、算术
Java实现Graphics2D绘制验证码
对象池技术以及在apache common pool2中的原理应用
Aviator 一种表达式求值引擎
Guava集合框架
Google 开源的 Guava 工具库
Guava工具
Guava中的Map操作
本地缓存组件 Guava cache 详解
高性能限流器 Guava RateLimiter
深入理解RateLimiter限流实现原理
Lombok 使用指南
Lombok 注解大全
Lombok 中的 @Builder 用法
Lombok原理
Lombok中@SneakyThrows的原理
Java工具库集合
Hutool-Java 工具类库
Java 非常好用的反射框架Reflections
Top 16 的 Java 工具类
Java时间处理工具类
Java封装OkHttp3工具类
commons-io工具包的基本使用
使用 commons-cli 解析 Java 中的命令行选项
Java开发中JSON库的选型比较
Json序列化框架测评分析总结-fastjson、gson
Java常用的几个Json库性能对比
Jackson序列化时进行数据脱敏处理
Jackson注解的用法和场景
Jackson 常用注解
Jackson Mixin特性
jackson new ObjectMapper性能测试
@JsonIgnore与@JsonIgnorePropertiesd的区别
fastjson转换对象时属性为空null的处理为空串""的解决办法
JSONObject.parseObject解析数据后如何保持顺序不变
Fastjson的三种漏洞利用链
Fastjson 2
Java开发常用工具类
判空使用StringUtils.isBlank还是StringUtils.isEmpty
isEmpty 和 isBlank 的用法区别
6种常用Bean拷贝工具
12 种 Bean 自动映射工具对比
BeanUtils、BeanCopier、Dozer、Orika性能比较
MapStruct-字段映射工具类
MapStruct 1.5 发布,支持Map转为Bean
实体映射最强工具类MapStruct
MapStruct简单使用
实体类转换工具 MapStruct
Mapstruct新出的Spring插件
对象拷贝工具Orika的基本使用
使用BeanUtils.copyProperties进行对象之间的属性赋值
BeanUtils属性转换工具会出现的问题
BeanUtils.copyProperties的使用(深拷贝,浅拷贝)
BeanUtils 是用 Spring 的还是 Apache 的
改造 BeanUtils,优雅的实现 List 数据拷贝
开发中业务操作相关的记录
开发必备的 HttpUtil 分享
JDK的一个Bug,监听文件变更要小心了
15 行 Java 代码实现一个标准输出的进度条
快速接入 GitHub、QQ 第三方登录
Java调用SPL进行结构化数据处理
Java 解析 XML 文件
大文件上传:秒传、断点续传、分片上传
大文件上传下载、分片、断点续传
在Java程序中创建和转换PDF文件
Java实现HTML转换成PDF
Java将Word转PDF
Java校验两个文件内容是否相同
Java给图像加水印
图片打码实现
Java生成二维码
Java 代码基于开源组件生成带头像的二维码
使用Java开发在线生成pdf文档
Java实现Graphics2D绘制验证码功能
Java获取图片GPS信息
Java实现压缩文件与解压缩文件
Java无需解压直接读取ZIP压缩包里的文件及内容
Java操作Excel—Apache POI
使用 EasyPoi 导出 Excel 实现动态列
alanpoi import实现复杂的 Excel 导入导出
POI大量数据读取内存溢出分析及解决方案
POI导出Excel:设置字体、颜色、行高自适应、列宽自适应、锁住单元格、合并单元格
Excel大批量数据的导入和导出优化
Java导入导出Excel之EasyExcel
Excel导入结合JSR303加校验的工具
10w 行级别数据的 Excel 导入优化记录
Java 实现word、excel、ppt、txt等办公文件在线预览功能
10种定时任务的实现方式
任务调度框架 Quartz 用法指南
几种主流的分布式定时任务
Java 定时任务的几种实现方式
分布式定时任务原理
常见的定时任务技术选型
分布式定时任务框架选型
Java日志体系
Java日志发展历史
Java日志系统历史
Log配置教程及框架性能比较
日志框架Log4j的使用
SLF4J作为门面日志
Slf4j 日志框架适配原理
日志系统-Logback
Logback 高级知识点
Logback 配置文件优化
logback日志格式解析
高性能日志记录工具 Log4j 2
Log4j2的使用
Log4j2中RollingFile的文件滚动更新机制
Log4j2高性能测验
Log4j2 远程代码执行漏洞描述
Log4j2 漏洞重现
项目中日志的使用规范
日志格式规范
日志打印的15个建议
正确定义记录bug日志的方式
基于SLF4J MDC机制实现日志的链路追踪
基于SLF4J MDC机制实现快速过滤出一次请求的所有日志
Java 日志数据脱敏
Java爬虫框架
JMX 监控和管理 Java 程序
JVM
深入理解 JVM
JVM性能调优
JVM原理与深度调优
十个JVM核心知识点
JVM调优
九大 Java 性能优化工具
JDK 内置实用工具:监视、故障排除
6 个 Java 工具,轻松分析定位 JVM 问题
5款强大的JVM 性能调优监控工具
Java内存泄漏分析工具Memory Analyzer Tool
Java中各种内存溢出案例
内存泄漏和内存溢出的关系和区别
Java 类型信息详解和反射机制
jvm堆内存和GC简介
Java GC机制
JVM核心内存区--堆
JVM——GC的算法和种类一览
GC 日志打印配置
Minor GC、Major GC、Full GC 区别
Java内存模型
Java 内存模型
JVM内存模型分析
happens-before与JMM的核心概念
happens - before
JVM 内存区域划分
深入理解 Java 对象的内存布局
Java 创建的对象存放分析
Java 8 的内存结构
JVM内存布局
Java内存区域
JVM 内存布局
JVM内存分布与作用
JVM 内存区域 堆
class 文件分析
简单的JAVA字节码开源编辑器
Java class类文件结构详解
方法调用
Java 进阶之字节码剖析
从 javap 反编译后的角度了解字节码文件
JVM探针与字节码技术
Java 垃圾回收机制
JVM调优之垃圾定位、垃圾回收算法、垃圾处理器对比
Java 垃圾回收机制
JVM垃圾回收的 “三色标记算法” 实现
JVM之垃圾回收
垃圾回收算法
垃圾回收算法
JVM - ZGC垃圾收集器
Java新的垃圾收集器ZGC
ZGC
G1原理
G1垃圾收集器
CMS:生产环境上的JVM参数配置
GC垃圾收集器&JVM调优
JVM常用内存参数配置
JVM调优参数
常用的JVM参数
JVM调优参数、方法、工具以及案例总结
JVM之类加载与双亲委派机制
Java ClassLoader机制的理解
Java核心之ClassLoader机制
new一个对象背后发生了什么?
Java类的生命周期浅析
JVM 的执行子系统
Java 类加载过程
Java类加载过程梳理
JVM之类加载过程详解
JVM类初始化机制
类加载器之ClassLoader
ClassLoader 类加载器模型
Java 类加载器(ClassLoader)的实际使用场景
Class.forName 和 ClassLoader 的区别
Java 类加载器(ClassLoader)的实际使用场景
JVM 的类加载机制
自定义ClassLoader
Class 和 ClassLoader 的 getResource 方法对比
类的加载与ClassLoader的理解
Java中的类加载器
手写热加载
类加载常见错误
Tomcat 类加载器为什么要违背双亲委派模型?
不重启JVM,替换掉已经加载的类
JavaAgent
Java 源码防止被反编译
Java模块化的守护神——OSGi
JDBC
Java中JDBC常见坑
JDBC中 Statement 和 PrepareStatement 的区别
Java中以Maven方式引入Oracle JDBC Driver依赖
Druid池化技术数据库连接管理底层分析
JDBC 到 ORM 的事务实现
Java代码中监控MySQL的binlog
1亿条数据批量插入 MySQL,哪种方式最快?
MySQL快速批量插入数据的解决方法
JavaWeb
Server
Tomcat
Tomcat安装包以及安装配置
详解Tomcat 配置文件server.xml
Notes
Java ServletRequest 对象的一些必备的实用技巧
Tomcat 组成与工作原理
基于Servlet开发简易版的Spring的JavaWeb项目
Tomcat 的类加载机制
DevNotes
Tomcat顶层架构、服务部署、虚拟主机配置及优化服务
获取用户请求的ip地址
Window上Web项目启动时端口占用问题
JavaWeb项目问题
Cookie、Session、Token、JWT
JWT、JWE、JWS、JWK、JWA
JWT详解
Token 过期后自动续期
Web开发中的认证授权之Cookie Session Token JWT
Cookie、Session、Token 背后的故事
基于JWT的token验证、原理及流程
JWT的实现原理和基本使用
Tomcat请求处理过程分析
Tomcat服务优化
Tomcat调优参数
Tomcat源码分析—生命周期机制Lifecycle
服务端主动推送数据之SSE
JPA
DevNotes
IDEA逆向生成JPA Entity、Repository、Service、Controller、DTO的插件
通过IDEA连接数据表生成Java POJO对象
Mybatis
Notes
Mybatis resultMap 嵌套集合
Mybatis中 foreach collection 的用法
MyBatis 架构与原理
MyBatis架构与原理深入解析
Mybatis的实现原理
Mybatis中的OGNL表达式
Mybatis动态 SQL 大全
Mybatis中实体类属性和数据列之间映射的四种办法
MyBatis中#{}和${}的区别详解
Mybatis学习笔记整理
Mybatis中的设计模式
MyBatis源码中的设计模式-适配器
Mybatis中的数据读写
Mybatis通过Mapper接口操作数据库的原理分析
Mybatis缓存
MyBatis 二级缓存 关联刷新实现
Mybatis 中的 PreparedStatement 预编译
Mybatis 调试输出SQL语句实现的原理
DevNotes
优化where 1=1
Mybatis中的${}、#{}
MyBatis 批量插入的三种方式比较
MyBatis 批量插入数据的 3 种方法
tk-mybatis-通用Mapper生成器
Maven项目中Mybatis连接Oracle数据库进行逆向工程
Mybatis连接MySQL数据库进行逆向工程
MybatisGenerator逆向工程通用配置文件
Mybatis在插入数据时获取自增主键
Mybatis中分页PageHelper的使用
MyBatis的三种分页方式
开源Mybatis-PageHelper分页插件
大数据量下 PageHelper 分页查询性能问题的解决办法
PageHelper 插件,无故给 SQL 增加 Limit 问题
PageHelper 使用 ThreadLocal 的线程复用问题
MyBatis 流式查询接口快速分页
MyBatis中使用流式查询避免数据量过大导致OOM
15 个 MyBatis 使用技巧
Mybatis SQL注入
SQL注入
Mybatis简单配置数据加密解密
Mybatis插件的用处
MyBatis 插件原理与实战
Mybatis Plugins拦截器实现身份证等生产敏感数据的加解密
Mybatis类型处理器
Mybatis日志功能设计原理
Java多线程批量拆分List导入数据库
MyBatis-Plus使用 Generator 代码生成器生成实体类支持Swagger2
Mybatis-plus团队新作:mybatis-mate 轻松搞定数据权限
3种常见的数据脱敏方案
MyBatis-Plus 底层实现原理
MyBatisPlus的join联表查询
Mybatis 的增强版—EasyMybatis
Mybatis 的增强版—FastMybatis
Mybatis 开发神器:Fast MyBatis
比 MyBatis 快 100 倍的Bean Searcher
Bug
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
Hibernate
Notes
Hibernate Validator 提供的常用约束注解
Spring
Notes
Spring最常用的7大类注解
Spring为什么建议构造器注入
最全的 Spring 依赖注入方式
Spring构造注入不需要加@Autowired?
Spring基础知识点总结
Spring使用@Autowired 和 @Resource依赖注入的方式比较
Spring常用注解整理
Spring 中的各种注解
Spring事务总结
Spring的事务失效场景
从数据库事务到Spring事务
Spring 事务原理
Spring 事务剖析
Spring声明式事务会失效的场景总结
Spring事务失效的12种场景
Spring的@Transactional实现原理
Spring事务失效原因分析
Spring 声明式事务
Spring AOP
图解Spring AOP实现原理
Spring Boot 切面AOP实现权限校验
Spring AOP总结
SpringAOP
Spring实现AOP的三种方式
日志请求切面
使用Spring AOP切面编程 自定义注解搞定审计日志
Spring AOP、AspectJ、CGLIB之间的关系
Spring Aop 和 AspectJ 的区别和联系
Spring IOC(控制反转)
Spring SPI 机制总结
Spring Bean 的生命周期
Spring容器启动耗时分析 (Bean启动耗时)
Spring框架中Bean的生命周期
Spring解析、加载及实例化Bean的顺序
Spring容器中获取 Bean 实例的七种方式
7 种 Spring 注入 Bean 的方式
Bean 注入 Spring 容器的方式
Spring Bean 实例化的具体过程
Spring中12种定义Bean的方法
Spring Bean的作用域以及注解使用
Spring Bean的自动装配之@Autowired注解实现原理
Spring中如Service注入ServiceImpl类的原理分析
Spring中的配置保证可扩展性
BeanFactory和FactoryBean的区别
BeanFactory和FactoryBean的区别
BeanFactory、FactoryBean和ObjectFactory
Spring中涉及的设计模式总结
Spring用到的设计模式
Spring解决循环依赖原理分析
Spring 通过三级缓存解决循环依赖原理分析
Spring循环依赖分析
Spring循环依赖
图解 Spring 循环依赖
Spring如何解决循环依赖的源码分析
Spring 事件驱动模型
@SessionAttributes与@SessionAttribute会话数据控制
DevNotes
SpringBean默认是单例的,高并发情况下,如何保证并发安全
Spring的Xml和JavaConfig 扩展
Spring自定义XML schema 扩展
Spring中自定义注解使用
在IDEA中新建Maven的SSM(Spring SpringMVC Mybatis)项目整合笔记
Spring配置开发引入头部约束
优雅地记录HTTP请求和响应的数据
Spring 的 Controller 是单例还是多例?
Spring 中的 Service 多个实现类注入实现
基于 RequestBodyAdvice 与 ResponseBodyAdvice 实现统一加密和解密
Spring 注解动态数据源设计
使用 StopWatch 优雅打印执行耗时
StopWatch替代System.currentTimeMillis() 统计代码耗时
分布式 Session
Spring Security中WebSecurity和HttpSecurity的关系
浅析 Spring Security 核心组件
Spring Security实现类似Shiro权限表达式的RBAC权限控制
Spring Security的配置机制
Spring Security的注解访问权限控制
Spring Security 中的权限注解
使用自定义注解放行 Spring Security 项目的接口
Spring Security过滤器链体系
Spring Security过滤器的排序规则
Spring Security中利用JWT退出登录
Spring Security5.5正式实装OAuth2.0的第五种授权模式
Spring Security获取当前用户信息
Spring Security 中使用Keycloak作为认证授权服务器
一个接口在Keycloak和Spring Security之间执行过程分析
通过管理API管理OAuth2 认证授权服务器Keycloak
SpringRetry重试组件的使用
Spring优雅的实现重处理功能
Spring-Retry重试机制实现原理
批处理框架 Spring Batch的简单使用
Spring Batch批处理框架实战
Spring和SpringBoot 的区别是什么?
Spring Native打包Java程序
动态上传jar包热部署实战
SpringMVC
Notes
SpringMVC学习笔记整理
SpringMVC-接收参数注解
SpringMVC 的处理流程
SpringMVC工作原理
DevNotes
Spring MVC中处理Request和Response的策略
Spring 使用 @RequestHeader 获取请求头常用方式
Spring MVC控制器的14个技巧
SpringMVC用ResponseEntity返回可实现更强大的功能
SpringMVC中拦截器的配置
SpringMVC异步处理的 5 种方式
SpringMVC控制返回JSON以及XML格式的数据
SpringMVC如何保证Controller的并发安全
Netty整合SpringMVC,实现高效的HTTP服务请求
SpringBoot
Notes
Spring Boot 3.0新变化
SpringBoot启动流程
SpringBoot中SmartLifecycle和Lifecycle的作用和区别
将Bean放入Spring容器中的五种方式
Spring Boot中6种 注入 Bean 的方式
SpringBoot静态方法获取 bean 的三种方式
自定义SpringBoot启动Banner样式
SpringBoot 44 种应用启动器整理
SpringApplication对象构建原理
SpringBoot 启动时让方法自动执行的几种实现方式
SpringBoot 启动时实现自动执行代码的几种方式
SpringBoot 启动时初始化数据
SpringBoot初始化时做扩展
SpringBoot中CommandLineRunner
使用SpringBoot的CommandLineRunner遇到的坑
SpringBoot常用注解
SpringBoot注解最全详解
@RequestBody 接收数组、List 参数、@Deprecated 标记废弃方法
Spring 注解 @After,@Around,@Before 的执行顺序
@Value注解
@Value注解
@Value注解的使用、实现过程以及自定义实现
40 个 SpringBoot 常用注解使用示例
Spring Boot 常用注解分类整理
Spring注解比较,@bean和@component的区别
@Autowired的使用
@Autowired 的实现原理
@Autowired注解实现原理
@Qualifier注解的作用和应用
SpringBoot自动化启动注解之@SpringBootApplication
Spring中的@Bean注解
@Autowired、@Resource和@Inject注解的区别
@Autowired 和 @Resource 的区别
SpringMVC中@ControllerAdvice注解的工作原理
@RestController 与 @Controller 的区别
@Import注解
@Conditionalxxx注解
Spring Boot 注解原理,自动装配原理
自定义SpringBoot的@EnableXXX注解
SpringBoot 手动配置 @Enable 的秘密
SpringBoot自动配置原理
SpringBoot的生产特性SpringBoot Actuator
SpringBoot配置文件
Spring 获取配置的三种方式
5种高大上的yml文件读取方式
YAML与SpringBoot
SpringBoot中读取配置文件的属性值
SpringBoot之配置文件参数属性
Spring Boot启动时对配置文件进行校验
SpringBoot中静态变量注入方案
自定义注解从配置文件解析参数
Springboot启动扩展点总结
SpringBoot的 jar 可以直接运行的原理分析
SpringBoot的jar可以直接运行的原理分析
SpringBoot jar 可执行原理
Spring Boot 2.x中扩展XML格式的请求和响应
四种引用类型在SpringBoot中的使用
DevNotes
Spring Boot 开发环境热部署(HotSwap)详解
7 种方式提升 SpringBoot 项目的吞吐量
Spring Boot 生产中 16 条最佳实践
SpringBoot自带的工具类
SpringBoot的条件装配
SpringBoot 中使用 Jackson 格式化配置
SpringBoot 接口数据加解密
SpringBoot-参数校验
SpringBoot 优雅地实现业务校验
SpringBoot 参数校验/参数验证常用方法总结
数据校验
SpringBoot 优雅的参数效验
参数验证 @Validated 和 @Valid 的区别
SpringBoot之参数校验
Spring Validation最佳实践及其实现原理
一个基础的SpringBoot 项目该包含哪些东西
设计 API 接口实现统一格式返回
SpringBoot项目构建基础:统一结果,统一异常,统一日志
Spring Boot 无侵入式实现API接口统一JSON格式返回
SpringBoot中优雅地进行参数传递、响应数据封装、异常处理
SpringBoot中优雅的处理异常
断言 异常处理类
SpringBoot全局异常处理
SpringBoot全局异常处理思路
SpringBoot 的全局异常处理
SpringBoot优雅的实现异常处理
SpringBoot项目中统一异常处理实现
Spring Boot 自定义事件及监听
后端思维之抽取观察者模板
Spring Event处理业务解耦
Spring源码中广播与监听实现
SpringBoot事件监听的4种实现方式
自定义Spring Boot Starter
Spring Boot Starter 详解
SpringBoot开发技巧
SpringBoot开发技巧一
SpringBoot开发技巧二
Spring Boot中实现通用Auth认证的几种方式
SpringBoot通过切面AOP实现权限校验
SpringBoot 整合 Shiro 密码加密
Spring Boot 2.x使用LDAP来管理用户与组织数据
SpringBoot全局日期时间格式化
Spring Boot 全局日期格式化(基于注解)
SpringBoot 全局时间格式化方式
Spring Boot 关于日期时间格式化处理方式总结
SpringBoot2.x 整合 thumbnailator 图片处理
Spring Boot 使用拦截器、过滤器、监听器
SpringBoot 过滤器、拦截器、监听器对比及使用场景
SpringBoot实现登录拦截器
SpringBoot 中使用拦截器
SpringBoot中Filter的使用详解及原理
SpringBoot 中使用监听器
使用拦截器获取Controller方法名和注解信息
Spring Boot反爬虫
SpringBoot实现国际化i18n功能
SpringBoot代码实现国际化
SpringBoot配置静态资源的目录以及获取静态资源路径的方式
Spring Boot 配置 HTTPS 的详细流程
SpringBoot 中设置 HTTP 缓存
SpringBoot 服务配合Sentinel实现了接口限流
SpringBoot中的线程池的使用
Spring Boot 2.5.0 重新设计的spring.sql.init 配置的作用
SpringBoot使用内部Tomcat处理文件上传保存至本地映射的目录
SpringBoot前后端分离项目跨域配置
关于引入Spring Security后Spring Boot中的跨域失效的问题
在IDEA中新建SpringBoot项目
优雅停止 SpringBoot 服务,拒绝 kill -9 暴力停止
SpringBoot 停机的正确方式
SpringBoot WebSocket实现扫码登录功能
SpringBoot WebSocket实时监控异常
SpringBoot集成Caffine Cache
Spring Boot EasyExcel 导入导出
SpringBoot 一个接口同时支持 form 表单、form-data、json 的优雅写法
SpringBoot 实现策略模式
Spring Cache缓存原理与Redis实践
Spring Boot 2.x进程内缓存的使用与Cache注解详解
SpringBoot操作数据库
Spring支持多数据源的实现
Spring Boot 2.x JdbcTemplate的多数据源配置
Spring Boot 2.x——Spring Data JPA的多数据源配置
Spring Data JPA 自动保存操作人、操作时间等
SpringBoot整合Druid统计、监控 SQL运行情况
Druid数据库连接池
SpringBoot项目配置阿里Druid数据源管理
SpringBoot使用druid-spring-boot-starter配置
MySQL驱动8.0导致Druid超时的问题
SpringBoot整合Mybatis相关
SpringBoot开启Mybatis的日志
SpringBoot Mybatis Druid PageHelper 实现多数据源并分页
Springboot整合Mybatis-plus
SpringBoot整合Mybatis Plus 自动保存操作人 操作时间等
SpringBoot整合Mybatis-plus项目中使用PageHelper的分页插件
SpringBoot Mybatis Mycat 多租户数据库实现
Spring Boot 2.x——MyBatis的多数据源配置
SpringBoot 优雅实现动态数据源切换配置
Spring Boot 整合Mybatis多数据源
SpringBoot MyBatis MySQL 实现读写分离
基于SpringBoot的MySQL实现读写分离
Spring Boot MyBatis MySQL 实现读写分离
SpringBoot 整合 MyCat 实现读写分离
分库分表中件间Mycat中的坑
Sharding-JDBC实现分库分表
Sharding-JDBC 分库分表
快速入门分库分表中间件 Sharding-JDBC
SpringBoot整合Sharding实现水平分表
Sharding-Jdbc实现读写分离、分库分表
Sharding-JDBC 实现 读写分离
Sharding-JDBC 数据脱敏
一个注解搞定分布式事务
SpringBoot主从数据库的配置和动态数据源切换原理
SpringBoot整合Redis开发
解决RedisTemplate存储至缓存数据出现乱码的情况
Redis HyperLogLog
Redis 对象映射框架
Spring Boot Redis 实现各种操作
SpringBoot 监听 Redis Key 失效事件实现定时任务
RedisTemplate中opsForValue使用
SpringBoot 项目接入Redis集群
SpringBoot利用Redis的Geo功能实现查找附近的位置
Java客户端操作Redis之使用SCAN代替KEYS命令
SpringBoot中使用注解来实现 Redis 分布式锁
redisTemplate分布式锁演变、redission分布式锁实现
Redis 分布式锁15问
Redisson实现分布式锁的原理分析
Redis 生产环境查找无过期时间的 key
Redis 做接口限流
SpringBoot Redis 注解 拦截器来实现接口幂等性校验
SpringBoot Redis Interceptor 自定义annotation实现接口自动幂等
SpringBoot 整合 MongoDB
SpringBoot中使用MongoTemplate实现常见操作
SpringBoot 集成Elasticsearch实现增删改查
Elasticsearch业务常用21种语句操作附Java Api代码
ElasticSearch进阶:各种ES查询在Java中的实现
Spring Boot操作ES进行各种高级查询
Spring Boot 中整合 Elasticsearch
SpringBoot 整合 Elasticsearch 实现海量级数据搜索
SpringBoot 整合 ES 进行各种高级查询搜索
用Elasticsearch实现Word、PDF,TXT文件的全文内容检索?
在 ES 中实现嵌套json对象查询
Spring Boot中操作时序数据库InfluxDB
Spring Boot 2.x使用Flyway管理数据库版本
Flyway 实现 Java 自动升级 SQL 脚本
Spring Boot 整合 阿里开源中间件 Canal 实现数据增量同步
SpringBoot集成Debezium实时监视同步数据库变更
Spring Boot 2.x使用JTA实现分布式事务
SpringBoot事务
@Transactional使用总结
@Transactional实现原理
使用 @Transactional 时常犯的几种错误
SpringBoot事务Transaction
事务注解 @Transactional 失效的3种场景及解决办法
在事务注解@Transactional中指定rollbackFor
SpringBoot 分布式事务的解决方案(JTA Atomic 多数据源)
大事务问题解决方案
SpringBoot整合消息中间件
Spring Boot 项目使用 Disruptor 做内部消息队列
SpringBoot MQTT apollo实现订阅发布功能
SpringBoot 整合 Kafka
SpringBoot 整合 Kafka 实现数据高吞吐
Spring Boot Kafka 之 @KafkaListener 单条或批量处理消息
SpringBoot2.x 集成 RabbitMQ 并实现延时队列
SpringBoot 整合 RabbitMQ,利用 MQ 实现事务补偿
SpringBoot RabbitMQ 实现死信队列
SpringBoot操作文件系统
SpringBoot 搭建基于 minio 的高性能存储服务
SpringBoot集成FastDFS文件系统
SpringBoot2.*集成Hadoop3.3实现分布式文件管理系统
SpringBoot整合Swagger开发
SpringBoot整合Swagger3.0官方starter开发
SpringBoot2.*整合Swagger2开发
SpringBoot接入第三方客户端开发
Dubbo集成Spring Boot ,实现多注册中心
基于 SpringBoot WebMagic 实现一个的爬虫框架
Spring Boot GraphQL整合开发
一款基于SpringBoot接口快速开发框架
Spring Boot 接入支付宝支付的 SDK 方法
Spring Boot 接入微信支付
SpringBoot接入支付宝
SpringBoot配置文件、隐私数据脱敏实践
两种方式,实现 SpringBoot 中数据库密码加密
保护 SpringBoot 配置文件中的敏感信息
SpringBoot 日志、配置文件、接口数据脱敏处理
Spring Boot 2.x使用JTA实现分布式事务
SpringBoot整合工作流开发
SpringBoot整合Flowable快速实现工作流
SpringBoot flowable整合工作流开发
SpringBoot整合Activiti6
工作流引擎 Activiti 教程
Activiti 的生命周期
Activiti6表结构
SpringBoot定时任务实现的4种方式
Spring Boot实现定时任务的三种方式
Spring Boot 2.x使用@Scheduled实现定时任务
Spring Boot中Schedule
谨慎使用SpringBoot中的@Scheduled注解
Spring Boot 定时任务开启后,怎么符合条件自动停止?
优雅的实现 SpringBoot 并行任务
Spring Boot 2.x使用Elastic Job实现定时任务
SpringBoot Elastic-Job,实现动态创建定时任务,任务持久化
SpringBoot 定时任务动态管理通用解决方案
SpringBoot实现动态增删启停定时任务
Spring Boot 多个定时任务阻塞问题的解决方案
SpringBoot SpringBatch Quartz整合定时批量任务
SpringBoot中用 @Async 提升API接口并发能力
SpringBoot 异步编程
为什么不建议直接使用 Async 注解
@Async注解的坑
@Async会内存溢出的原因分析
@Async配置多个线程池来隔离异步任务
Spring Boot 集成 JUnit5测试
文件上传的单元测试
SpringBoot整合Junit5 常用注解
Spring Security中的单元测试
Spring Boot安全漏洞
SpringBoot优化
SpringBoot 内置 Tomcat 线程数优化配置
SpringBoot 性能这样优化
SpringBoot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控等
Spring Boot 可视化监控
SpringBoot Admin——可视化管理和查看SpringBoot项目
Spring Boot Prometheus Grafana 打造可视化监控
SpringBoot 中的 Tomcat 性能数据监控
SpringBoot实现Actuator端点可视化监控
Spring Boot 埋点监控
Spring Boot 应用可视化监控
SpringBoot整合Prometheus
SpringBoot日志集成相关
SpringBoot MDC实现全链路调用日志跟踪
Spring Boot 记录请求响应日志的常用手段
Spring Boot 2 集成 log4j2 日志框架
通过一个注解搞定 SpringBoot 操作日志记录
SpringBoot配置日志保存至文件
Springboot 使用logback直接将日志写入Elasticsearch
SpringBoot 动态设置 logback 日志的级别
SpringBoot动态设置 log4j2 日志的级别
SpringBoot项目中敏感数据读写
SpringBoot整合Sharding Sphere实现数据“一键脱敏”
SpringBoot项目打包(IDEA中操作)
SpringBoot打包不同环境配置与shell脚本部署
解决SpringBoot项目打包不能在其他项目中引用的问题
SpringBoot项目之打包运行发布
Spring Boot 项目瘦身指南
SpringBoot项目轻量快速部署方案
Spring Boot的 Docker打包插件
使用Spring Boot Operator将Spring Boot部署到Kubernetes
Spring Boot gRPC构建微服务并部署到Istio
Bug
Bean property 'mapperHelper' is not writable or has an invalid setter method.
java.sql.SQLSyntaxErrorException: Table 'hls_train.hibernate_sequence' doesn't exist
SpringCloud
Notes
SpringCloud-微服务架构
基于Spring Cloud的微服务架构分析
Spring Cloud每个组件的作用
SpringCloud Eureka&Consul-服务发现
SpringCloud Eureka自我保护机制
Spring Cloud Eureka 常用配置详解
SpringCloud GateWay&Zuul-网关和路由
SpringCloud Gateway CORS方案
Spring Cloud Gateway 限流
Spring Cloud Gateway
Gateway 网关路由、断言、过滤
Spring Cloud Gateway 之限流
Ribbon 的架构原理
SpringCloud Ribbon-自定义RestTemplate
SpringCould中的Hystrix
请求合并的三种方式,大大提高接口性能
Hystrix使用说明,配置参数说明
Hystrix-服务熔断
SpringCloud Feign-声明性Http请求以及Hystrix-Http请求的熔断配置
@SpringQueryMap注解的使用
@EnableFeignClients 注解的工作原理
Feign FeignClient源码
SpringCloud原理:OpenFeign之FeignClient动态代理生成原理
SpringCloud开发中常用注解整理
SpringCloud 配置中心
Nacos、Apollo、SpringCloud Config微服务配置中心对比
SpringCloud 常见注册中心的比较
SpringCloud与Dubbo的区别
DevNotes
SpringCloud与SpringBoot版本对应关系表
SpringCloud微服务聚合
1.SpringCloud-Eureka-注册中心搭建
2.SpringCloud-Zuul网关
微服务注册至注册中心访问服务的接口文档以及Druid的方式
Spring Cloud Feign 自定义配置(重试、拦截与错误码处理)
OpenFeign的使用
OpenFeign的9个坑
Feign 请求头设置与传递问题
Feign调用丢失Header的解决方案
openFeign实现全链路JWT令牌信息不丢失
Spring Cloud OpenFeign 接口反序列化失效解决方案
Spring Cloud Security整合OAuth2.0
SpringCloud统一异常处理
OAuth2.0整合Spring Cloud Security
Spring Cloud Gateway 整合阿里 Sentinel网关限流实战
SpringCloud Gateway 使用 Sentinel 实现服务限流熔断
SpringCloud Gateway堆外内存溢出排查
SpringCloud Docker Jenkins GitLab Maven实现自动化构建与部署实战
Spring Cloud灰度发布方案
SpringCloud 优雅下线 灰度发布
Spring Cloud Sleuth分布式链路追踪
链路追踪的另外一种解决方案Skywalking
微服务中使用阿里开源的TTL,优雅的实现身份信息的线程间复用
Spring Cloud AliCloud
Spring Cloud AliCloud SchedulerX
Spring Cloud Alibaba Nacos Config
SpringCloudAlibaba Nacos Config作为配置中心时变量引用的用法
SpringCloudAlibaba Nacos Config作为配置中心的刷新级别测试
SpringCloudAlibaba Nacos使用过程中的问题总结
Nacos服务注册的原理
Nacos注册中心之概要设计
Spring Cloud Alibaba Nacos Discovery
Spring Cloud Alibaba Sentinel
Sentinel简介
Alibaba Sentinel
Sentinel单机限流
Sentinel 限流算法以及实现原理
流量治理神器-Sentinel 如何优雅接入
流量治理神器-Sentinel限流熔断应用实战
阿里限流神器Sentinel
流量治理神器-Sentinel的限流模式,选单机还是集群
Sentinel集群限流探索
Sentinel核心原理
SpringCloud Alibaba之Seata分布式事务
阿里 Seata 新版本终于解决了 TCC 模式的幂等、悬挂和空回滚问题
Seata 实现 TCC模式 解决分布式事务
Seata AT 模式事务隔离级别与全局锁设计
SpringCloud课程笔记
SpringCloud基础以及基础组件的使用
SpringCloud与容器化
Spring Boot与Kubernetes云原生微服务实践
可编程网关设计和实践
安全框架设计与实践
微服务测试设计和实践
可运维架构设计和实践
服务容器化和Docker compose部署
云原生架构和Kubernetes容器云部署
Staffjoy部署至Kubernetes
Bug
微服务应用部署在一台服务器上莫名其妙被停掉的原因分析
was unable to refresh its cache! status = Cannot execute request on any known server
Zuul网关访问接口超时There was an unexpected error (type=Gateway Timeout, status=504).
com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect
Dubbo
Dubbo
Dubbo扩展点开发指南
分析 Dubbo SPI 源码,扩展 Dubbo Validation (groups)
服务治理中的路由设计
Dubbo数据包处理流程
Netty
Notes
Netty编码器解码器
Netty入门
ByteBuffer和netty.ByteBuf
Netty 中的心跳机制
浅析操作系统和Netty中的零拷贝机制
mmap
DevNotes
Netty开发常见问题解决
Netty ChannelHandler 业务处理
Netty 的编码 解码 案例
在SpringBoot项目中使用Netty实现远程调用
使用Netty进行Socket编程
Netty 实现长连接服务的难点和优化点
Netty客户端断线重连实现及问题思考
Netty监听多个端口
Logs
Linux启动Java程序jar包Shell脚本
暂无相关搜索结果!
让时间为你证明
分享,让知识传承更久远
×
文章二维码
×
手机扫一扫,轻松掌上读
文档下载
×
请下载您需要的格式的文档,随时随地,享受汲取知识的乐趣!
PDF
文档
EPUB
文档
MOBI
文档
书签列表
×
阅读记录
×
阅读进度:
0.00%
(
0/0
)
重置阅读进度
×
思维导图备注