
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
这篇文章结合一次真实开发场景,分享我在 MyBatis Plus 中处理大批量 in 条件更新的思路。相比直接一条 SQL 一把梭,我更倾向于按固定批次动态拆分、循环更新,以提升执行稳定性和可维护性。文章会从问题背景、直接写法的风险、分批方案的实现以及实际注意点几个方面展开,适合后端开发在处理大数据量更新场景时参考。

对于刚接触开源的新手来说,第一道门槛往往不是代码,而是环境配置。本文基于 Mac 环境,围绕 Git、JDK、Maven、Docker 四个最常用工具,详细整理安装、配置与常见踩坑点,尽量做到新手照着一步步操作也能完成基础开发环境搭建。

本文用面试视角,结合代码案例,梳理线程池的作用、7 个核心参数、任务执行流程、常见队列、拒绝策略以及实际开发中的使用建议。当线程池已经达到最大线程数,并且任务队列也满了,新任务就会触发拒绝策略。这样核心线程数、最大线程数、队列长度、线程名称、拒绝策略都可以自己控制。线程池是用来复用线程、控制并发数量、减少线程频繁创建和销毁成本的。任务提交后必须马上有线程接收,否则就创建新线程或触发拒绝策略。线程池

很多人知道它是 key-value 结构,也知道 JDK 1.8 后引入了红黑树,但面试时容易答散。本文用面试视角,简单梳理 HashMap 的底层结构、put 流程、扩容机制、哈希冲突、线程安全问题和常见追问。当 length 是 2 的幂时,这种位运算可以比较均匀地分布数据,也比取模运算更高效。HashMap 不是单纯的数组,也不是单纯的链表,而是数组、链表、红黑树结合使用。也就是说,当 Ha

如何保证线程安全、JDK 1.7 和 JDK 1.8 的区别、put/get 流程、null 值限制和实际代码案例几个角度,梳理这个高频面试题。是线程安全的 Map,它通过更细粒度的锁控制、CAS、volatile 等机制,保证并发读写安全,同时尽量减少锁竞争。因为第一次插入成功后,第二次发现 key 已存在,就不会覆盖。不要一上来锁整张表,能无锁就无锁,必须加锁时尽量缩小锁范围。这段代码不一定能

尤其是 Java 面试八股,平时写业务代码的时候感觉都懂,但真到面试被问起来,如果没有提前梳理,很容易答得又散又乱。本文用面试视角,快速梳理 Java 集合体系、常见分类、核心区别和高频追问,适合面试前快速复习。是 Java 集合框架中的一个顶层接口,它表示一组对象。这篇先不展开所有集合底层原理,先把集合体系和分类讲清楚。面试时先把分类讲清楚,再展开具体实现类的特点和区别。Java 集合是面试里非

很多人只会背“ArrayList 查询快,LinkedList 增删快”,但这个说法其实不够严谨。但实际场景中,如果你不是已经拿到了节点,而是通过下标找位置,再插入删除,那么它也需要遍历。如果你要先按下标找到某个位置,再插入或删除,那么查找这一步就已经有成本了。底层是双向链表,插入删除节点本身方便,但如果要先查找位置,也需要遍历。底层是双向链表,插入删除节点本身方便,但按下标查找需要遍历。第三,实

TinyVue 是 OpenTiny 社区的企业级 UI 组件库,官方介绍里提到它支持 Vue 2、Vue 3,同时支持 PC 端和移动端,适合做企业后台、表单、列表、管理页面这类场景。TinyVue 是 OpenTiny 社区的企业级 UI 组件库,支持 Vue 2、Vue 3、PC 端和移动端,适合企业级后台和管理系统场景。而是很多时候,你懂一点页面结构、组件用法、前端交互,会让你和前端沟通更

TinyVue 是 OpenTiny 社区的企业级 UI 组件库,官方介绍里提到它支持 Vue 2、Vue 3,同时支持 PC 端和移动端,适合做企业后台、表单、列表、管理页面这类场景。TinyVue 是 OpenTiny 社区的企业级 UI 组件库,支持 Vue 2、Vue 3、PC 端和移动端,适合企业级后台和管理系统场景。而是很多时候,你懂一点页面结构、组件用法、前端交互,会让你和前端沟通更

很多 Java 开发者听过 Spring AI,但真正跑过 Demo 的不多。本文用 Spring Boot + Spring AI + DeepSeek,从 0 跑通第一个 AI 对话接口,包含依赖配置、Key 配置、接口代码、调用测试和常见坑。








