<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[aakhvb的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/aakhvb</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; aakhvb]]></copyright><item><title><![CDATA[计算机网络知识点汇总]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/158614429</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/158614429</guid><author>aakhvb</author><pubDate>Tue, 03 Mar 2026 13:44:27 +0800</pubDate><description><![CDATA[计算机网络是将分散的、具有独立功能的计算机系统，通过通信设备与线路连接，由完善的网络协议实现资源共享和信息传递的系统。防止失效的连接请求报文到达服务端，导致服务端建立无效连接，浪费服务器资源确保客户端和服务端双方的发送能力、接收能力都正常，完成双向确认三次是完成双向可靠确认的最小次数，四次无必要，会增加连接建立的时延。]]></description><category></category></item><item><title><![CDATA[操作系统知识点汇总]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/158510672</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/158510672</guid><author>aakhvb</author><pubDate>Sat, 28 Feb 2026 21:08:34 +0800</pubDate><description><![CDATA[操作系统是管理计算机硬件与软件资源的系统软件，是用户和计算机硬件之间的接口，是计算机系统的核心基石。]]></description><category></category></item><item><title><![CDATA[同一账号在同一客户端类型只能登录一次]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/158356860</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/158356860</guid><author>aakhvb</author><pubDate>Tue, 24 Feb 2026 23:06:57 +0800</pubDate><description><![CDATA[JeecgBoot 单点登录的核心技术栈为JWT（生成唯一登录凭证）+ Redis（存储登录状态 / 管理 token），所有核心逻辑集中在LoginController类中，是 JeecgBoot 权限体系的重要组成部分。]]></description><category></category></item><item><title><![CDATA[Jeecgboot框架-权限控制]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/158356801</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/158356801</guid><author>aakhvb</author><pubDate>Tue, 24 Feb 2026 22:58:14 +0800</pubDate><description><![CDATA[Jeecgboot 的权限体系核心为按钮权限（功能权限）+ 数据权限，基于 Shiro 实现权限校验，遵循「用户 - 角色 - 权限」的关联逻辑（用户关联角色、角色绑定权限，权限不直接分配给用户），所有权限配置最终通过系统端配置 + 前后端代码注解 / 校验联动生效。]]></description><category></category></item><item><title><![CDATA[更新时对字段的重复校验]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/157511025</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/157511025</guid><author>aakhvb</author><pubDate>Thu, 29 Jan 2026 15:49:12 +0800</pubDate><description><![CDATA[/创建自定义注解@Constraint(validatedBy = UniqueValidator.class) //用于指定校验逻辑的实现类String message() default "字段值已存在";Class<?Class<?// 表名// 字段名// 排除的ID（用于更新）//创建校验器@Autowired@Override@Override// 构建查询条件// 如果排除ID不为空，添加排除条件。]]></description><category></category></item><item><title><![CDATA[JVM参数调优实战指南：从入门到进阶]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156653940</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156653940</guid><author>aakhvb</author><pubDate>Tue, 06 Jan 2026 18:02:19 +0800</pubDate><description><![CDATA[bin/bash# Java 11+ 生产环境通用配置模板# 基础内存配置-Xmn2g# 垃圾收集器（G1）# GC日志（必须开启！# 故障排查# 性能优化# 禁止危险操作# Docker容器支持JVM调优是一门艺术，更是一门科学。它需要在理解原理的基础上，结合具体业务场景进行实践。没有最好的配置，只有最适合的配置。通过持续的监控、分析和调整，我们可以让Java应用在稳定性和性能上达到最佳平衡。希望本文能为您提供实用的JVM调优指导。]]></description><category></category></item><item><title><![CDATA[Java集合框架（四）：Map接口深度解析与HashMap、TreeMap、LinkedHashMap对比]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156604522</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156604522</guid><author>aakhvb</author><pubDate>Tue, 06 Jan 2026 09:00:00 +0800</pubDate><description><![CDATA[HashMap基于哈希表，性能最优（O(1)）无序，允许null键值需要重写键的hashCode和equals继承HashMap，维护插入/访问顺序适合实现LRU缓存性能略低于HashMapTreeMap基于红黑树，按键排序性能O(log n)，支持范围查询键必须实现Comparable或提供Comparator线程安全的HashMap高并发性能优秀替代Hashtable。]]></description><category></category></item><item><title><![CDATA[Java集合框架（三）：Set接口深度解析与HashSet、TreeSet、LinkedHashSet对比]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156597786</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156597786</guid><author>aakhvb</author><pubDate>Mon, 05 Jan 2026 20:00:00 +0800</pubDate><description><![CDATA[Set接口是Collection的子接口，它具有以下核心特征：唯一性：不允许重复元素（基于equals()和hashCode()判断）无序性：大多数实现不保证元素的顺序允许null元素：大多数实现允许一个null元素（TreeSet除外）


二、HashSet：基于哈希表的Set实现

2.1 HashSet的内部结构与原理




2.2 HashSet的哈希机制




2.3 HashSet的性能特点与使用场景




三、TreeSet：基于红黑树的有序Set

3.1 TreeSet的内部结构与]]></description><category></category></item><item><title><![CDATA[Java集合框架（二）：List接口深度解析与ArrayList、LinkedList对比]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156597470</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156597470</guid><author>aakhvb</author><pubDate>Mon, 05 Jan 2026 16:00:00 +0800</pubDate><description><![CDATA[List是Java集合框架中最常用的接口之一，它具有以下核心特征：有序性：元素按照插入顺序保存，可以通过索引访问可重复性：允许存储相同的元素支持索引操作：提供了基于位置（索引）的各种方法允许null元素：大多数实现允许存储null值


二、ArrayList：基于动态数组的实现

2.1 ArrayList的内部结构




2.2 ArrayList的核心操作源码分析




2.3 ArrayList的迭代与快速失败机制




三、LinkedList：基于双向链表的实现

3.1 LinkedLi]]></description><category></category></item><item><title><![CDATA[Java集合框架（一）：集合基础与Collection接口详解]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156597238</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156597238</guid><author>aakhvb</author><pubDate>Mon, 05 Jan 2026 11:35:29 +0800</pubDate><description><![CDATA[本文介绍了Java集合框架中的Collection接口及其核心应用。Collection作为单列集合的根接口，包含List（有序可重复）、Set（无序不可重复）和Queue（队列）三大子接口。文章详细讲解了Collection的基本操作方法（添加、删除、查询等）以及三种遍历方式（增强for循环、迭代器、forEach方法）。通过对比数组与集合的特性，突出了集合在动态扩展和功能丰富性方面的优势。最后强调应根据实际需求选择合适集合类型：List保持顺序、Set确保唯一性、Queue实现先进先出。]]></description><category></category></item><item><title><![CDATA[Java中Collection与Collections的区别：一文读懂]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156573938</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156573938</guid><author>aakhvb</author><pubDate>Sun, 04 Jan 2026 17:30:40 +0800</pubDate><description><![CDATA[Collection和虽然在名字上只有一字之差，但在Java中却代表着完全不同的概念。Collection是集合的根接口，用于定义标准；Collections是工具类，用于提供实用方法。掌握它们的区别，能够帮助你更准确地使用Java集合框架，写出更健壮、可维护的代码。作为开发者，理解这些基础概念是提升编程能力的关键一步。下次当你使用集合时，不妨想一想：我是在操作集合本身，还是在用工具处理它？这样，你就能游刃有余地选择正确的工具了。]]></description><category></category></item><item><title><![CDATA[Linux环境下部署SpringBoot前后端分离项目]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/156572092</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/156572092</guid><author>aakhvb</author><pubDate>Sun, 04 Jan 2026 17:21:09 +0800</pubDate><description><![CDATA[这里我用的是腾讯云服务器，虚拟机用的是FinalShell根据ip地址和账号密码进行连接。]]></description><category></category></item><item><title><![CDATA[MyBatis与MyBatis Plus面试终极指南]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151973087</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151973087</guid><author>aakhvb</author><pubDate>Tue, 23 Sep 2025 22:15:00 +0800</pubDate><description><![CDATA[在Java持久层框架领域，MyBatis以其灵活的SQL映射和优秀的性能表现，成为了众多企业的首选方案。而MyBatis Plus在MyBatis基础上进一步简化了开发流程，提供了强大的增强功能。本文将全面解析这两个框架的核心原理、高级特性以及面试中的高频问题，助你轻松应对技术面试。]]></description><category></category></item><item><title><![CDATA[Spring Boot面试终极指南：从基础到高级全面解析]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151972956</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151972956</guid><author>aakhvb</author><pubDate>Tue, 23 Sep 2025 18:15:00 +0800</pubDate><description><![CDATA[Spring Boot是基于Spring框架的"约定优于配置"理念的快速应用开发工具。它通过自动配置和起步依赖，极大简化了Spring应用的初始搭建和开发过程。​​1. 创建autoconfigure模块​​​​2. 定义配置属性类​​​​3. 创建自动配置类​​@Bean​​4. 创建spring.factories文件​​@Component@Override// 检查自定义组件健康状态} else {]]></description><category></category></item><item><title><![CDATA[Spring框架面试终极指南：核心概念、高频问题与深度解析]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151972831</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151972831</guid><author>aakhvb</author><pubDate>Tue, 23 Sep 2025 08:45:00 +0800</pubDate><description><![CDATA[作为一名Java开发者，Spring框架的掌握程度几乎决定了你的职业发展和技术水平。在当今的Java面试中，Spring相关问题出现的频率高达90%以上。本文将从Spring核心概念出发，全面解析面试中常见的Spring问题，帮助你在面试中脱颖而出。]]></description><category></category></item><item><title><![CDATA[深入理解JVM类加载与垃圾回收机制]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151934974</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151934974</guid><author>aakhvb</author><pubDate>Mon, 22 Sep 2025 22:00:00 +0800</pubDate><description><![CDATA[​​答​​：双亲委派模型要求除了顶层的启动类加载器外，其余的类加载器都应有自己的父类加载器。工作过程是：如果一个类加载器收到了类加载的请求，它首先不会自己去尝试加载这个类，而是把这个请求委派给父类加载器去完成。​​好处​​：​​安全性​​：防止核心API被篡改​​避免重复加载​​：保证类的唯一性​​结构清晰​​：类加载器层次关系明确。]]></description><category></category></item><item><title><![CDATA[深入理解Java虚拟机内存模型]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151934892</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151934892</guid><author>aakhvb</author><pubDate>Mon, 22 Sep 2025 17:45:00 +0800</pubDate><description><![CDATA[Java虚拟机（JVM）内存模型是Java程序员必须掌握的核心技术之一，不仅关系到程序性能优化、故障诊断，更是面试中的高频考点。据不完全统计，在Java中高级岗位面试中，JVM相关问题的出现概率高达85%！本文将带你系统性地学习JVM内存模型，从基础概念到高级应用，从学习复习到面试准备，全方位提升你的JVM功力。]]></description><category></category></item><item><title><![CDATA[Java线程池深度解析]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151934807</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151934807</guid><author>aakhvb</author><pubDate>Mon, 22 Sep 2025 11:00:00 +0800</pubDate><description><![CDATA[在现代高并发应用中，线程池是Java并发编程的核心组件。据统计，合理使用线程池可以提升系统性能30%-50%，同时避免资源耗尽导致的系统崩溃。阿里巴巴Java开发手册中明确要求：​​线程资源必须通过线程池提供，不允许在应用中自行显式创建线程​​。// 预启动所有核心线程static {]]></description><category></category></item><item><title><![CDATA[Java并发安全解析]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151934645</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151934645</guid><author>aakhvb</author><pubDate>Sun, 21 Sep 2025 20:39:46 +0800</pubDate><description><![CDATA[在当今高并发的互联网时代，多线程编程已经成为Java开发者的必备技能。然而，并发编程在提升系统性能的同时，也带来了复杂的安全性问题。据统计，约70%的生产环境问题与并发安全相关，且这类问题往往难以复现和调试。掌握并发安全知识，不仅是为了写出正确的代码，更是保障系统稳定性的关键。]]></description><category></category></item><item><title><![CDATA[Java并发编程深度指南：多线程]]></title><link>https://blog.youkuaiyun.com/aakhvb/article/details/151934574</link><guid>https://blog.youkuaiyun.com/aakhvb/article/details/151934574</guid><author>aakhvb</author><pubDate>Sun, 21 Sep 2025 20:34:15 +0800</pubDate><description><![CDATA[​使用CLH队列管理获取锁的线程通过state变量表示同步状态提供了acquire()和release()等模板方法。]]></description><category></category></item></channel></rss>