首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
后端实践总结
桦说编程
创建于2023-05-05
订阅专栏
总结后端实践心得,包含以下内容:业务逻辑实现、数据库设计与优化、API编写、性能优化、技术框架等。
等 25 人订阅
共35篇文章
创建于2023-05-05
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
CompletableFuture 超时功能有大坑!使用不当直接生产事故!
CompletableFuture 超时功能会出现 Delayer 线程延迟执行的情况。本文将详细复现与讨论超时功能的大坑,同时提供一些最佳实践指导。
【异步编程实战】如何实现超时功能(以CompletableFuture为例)
大多数网络异步任务的执行常常会进行超时限制,在并发编程中是一个常见的问题。本文主要讨论实现超时功能的基本思路以及CompletableFuture是如何通过代码实现超时功能的。
为什么线程池中的临时线程这么奇怪?
很多人对于临时线程的理解有问题。文章主要讨论了 Java 线程池临时线程的工作原理和思想,结合了少量源码,给出了相关的配置策略。
Java 单元测试实战——编写可测试代码的技巧
本文讨论了Java如何编写可测试代码,结合实践,给出了相关代码demo。内容涉及如何将依赖外置,避免对数据库的模拟测试,ServiceImpl类长代码优化等。
【桦说并发下篇】漫谈线程池
讨论了标准库线程池的问题,不同类库的拓展,包括Spring, Guava, Netty等,结合上一篇关于CompletableFuture的文章,提供了针对并发编程的通用编程方法。
Effective Java 3 读后感
推荐阅读 Effective Java 3 英文版,谈谈个人的阅读体会;总结阅读英文版的优缺点,给出了相关学习建议。
深入理解 Future, CompletableFuture, ListenableFuture,回调机制
分析了Future, CompletableFuture, ListenableFuture设计思想和实践,内容涉及函数式思想,链式调用,异步任务编排,取消机制,面向轨道编程,Promise写等
G1 垃圾回收的阶段
鉴于网络上关于 G1 垃圾回收器的回收过程描述不一,经常出现对于回收过程的过度简化,本文旨在明确说明 G1 垃圾回收器的回收过程。
正确理解JVM中的栈帧数据结构
有些博客和书中总结的栈帧数据结构不完全准确,本文总结了JVM规范中的相关内容。动态连接不是数据结构,而是一个过程,即把符号引用翻译成内存地址的过程。
深入理解Java中的双重检查锁DCL
本文梳理了 DCL 的多种实现,常见的 DCL 变形,如 final 实现,ThreadLocal 实现等,并从 happens-before 角度考虑某些 DCL 实现为什么失效。
Java如何系统地避免空指针问题
新手Java开发总是经常空指针检查,甚至某些老手也会犯这样的问题。本篇文章我们来看看如何系统地避免空指针问题。
可变集合操作的不可变实现(Guava使用指南3)
上篇文章主要讨论了不可变集合的优点,这次我们来看看具体如何改造或重构现有代码,实现相同的结果。本文详细分析了标准库中的多数可变方法,给出了不可变实现。
为什么要使用Guava不可变集合类(Guava使用指南2)
作为Java开发人员,为什么你一定要学会使用Guava?本文讨论了使用Guava不可变类的优点和最佳实践,建议收藏、转发、加关注。
Guava 用法指南(1)
好多人知道Guava类库却不经常使用,本文分析其中原因并深入剖析其编程思想,提出了最佳实践。Guava提供了Java标准库之外的能力支持,使用Guava对于提升代码能力大有裨益。
Mybatis Plus 最佳实践总结与逻辑删除实现
本文想讨论两个方面的内容,第一部分是 MyBatis Plus的最佳实践, 第二部分讨论了从面向对象的角度抽取出可复用的业务逻辑,主要包括逻辑删除的实现、通用CRUD的封装、自动填充字段等。