自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 Java IO 流-详解

Java IO流是处理数据传输的核心机制,主要分为字节流(InputStream/OutputStream)和字符流(Reader/Writer)。字节流处理二进制数据,字符流专用于文本文件。核心类包括:文件流(FileInputStream/FileReader)、缓冲流(BufferedInputStream/BufferedReader)、数据流(DataInputStream/DataOutputStream)和对象流(ObjectInputStream/ObjectOutputStream)。

2025-08-29 23:00:37 645

原创 Docker 详解+示例(部署Kafka镜像容器)

Docker是一个开源的容器化平台,通过将应用程序及其依赖打包成轻量级容器,实现一次构建,到处运行。相比传统虚拟机,Docker容器启动更快(秒级)、资源占用更少(MB级),支持单个宿主机运行数百个容器。文章详细介绍了Docker的核心命令,包括镜像管理(pull/build/push)、容器操作(run/start/stop)、资源限制和网络配置等,并提供了Kafka等应用容器的示例部署方法。Docker已成为开发测试、微服务架构和云原生应用的核心工具。

2025-08-28 23:46:47 1789 1

原创 雪花算法(Snowflake)详细解析+应用场景

雪花算法是Twitter设计的分布式ID生成方案,通过64位结构(时间戳41位+数据中心5位+机器5位+序列号12位)实现高性能ID生成。其核心优势在于:1)本地生成无网络开销;2)趋势递增利于数据库索引;3)支持定制化位分配。但存在时钟回拨敏感、机器ID管理等问题,需配合NTP时钟同步和动态ID分配机制。适用于订单系统、分库分表等场景,在有序性、唯一性和性能间取得平衡,是当前分布式系统主流的ID生成方案。

2025-08-27 00:29:25 791

原创 Linux命令详解+示例(炫彩超全)

本文总结了Linux常用命令,分为11大类:1. 系统基础信息命令(ifconfig、top等)2. 防火墙管理命令(systemctl相关)3. 文件与目录操作命令(ls、cd等)4. 文件内容查看命令(cat、grep、less等)5. 文件查找命令(find等)6. 用户与权限管理命令(useradd、chmod等)7. 压缩解压命令(gzip、tar等)8. 进程管理命令(ps、kill等)9. 软件包管理命令(rpm、yum)10. 文件传输命令(rz/sz)11. 文本编辑命令(vi、vim)

2025-08-26 23:14:34 1599

原创 Java自动装箱和自动拆箱

Java自动装箱与拆箱机制解析 Java5引入的自动装箱(Autoboxing)和拆箱(Unboxing)机制简化了基本类型与包装类之间的转换。自动装箱将基本类型转为包装类对象(如int→Integer),自动拆箱则相反。该特性常用于集合框架、方法参数传递和表达式运算中。需要注意空指针异常风险,以及部分包装类(-128~127范围)的缓存机制会复用对象。虽然该机制提高了编码便捷性,但频繁转换会影响性能,且包装类比较时需特别注意缓存范围的影响。理解这些特性有助于编写更健壮的Java代码。

2025-08-25 23:14:12 503

原创 Java线程同步Synchronized和ReentrantLock-详解

Java中synchronized与ReentrantLock的主要区别:synchronized是JVM实现的关键字,自动加锁解锁,使用简单但功能有限;ReentrantLock是JDK提供的类,需手动管理锁,支持可中断锁、超时获取锁和公平锁等高级特性。性能方面,JDK1.6后两者接近,但在高竞争场景下ReentrantLock可能更优。synchronized可能导致并发问题,而ReentrantLock通过tryLock()可实现超时控制。公平锁虽保证顺序但降低吞吐量,实际执行顺序受线程调度影响。

2025-08-25 01:32:18 1173

原创 WebSocket实现多人聊天页面-详解(Vue+SpringBoot)

本文介绍了一个基于Vue+SpringBoot的WebSocket实时聊天应用。系统采用STOMP协议实现双向通信,包含服务端的会话管理、消息处理和客户端交互功能。服务端通过SpringBoot实现WebSocket配置、消息控制器和事件监听器;客户端使用Vue.js构建,支持昵称设置、消息收发和实时显示。项目实现了完整的WebSocket通信流程,包括连接建立、消息广播和会话管理,为开发者提供了一个完整的实时聊天应用参考实现。

2025-08-21 23:48:01 1725 1

原创 Java集合解析

Java集合框架主要分为Collection(单值集合)和Map(键值对集合)两大体系。Collection包含List(有序可重复)、Set(无序唯一)和Queue(队列)子接口,其中ArrayList基于动态数组适合查询,LinkedList基于链表适合增删,HashSet/TreeSet分别实现快速查找和排序。Map接口中HashMap基于哈希表实现高效查询,TreeMap支持排序,LinkedHashMap保持插入顺序。线程安全方案推荐使用ConcurrentHashMap和CopyOnWriteA

2025-08-20 23:18:58 725

原创 HTTP 状态码解析

HTTP状态码完整指南摘要 本文系统梳理了HTTP状态码的分类及应用场景,涵盖1xx至5xx全部状态码。1xx表示临时响应,需继续操作;2xx表示成功请求,包括200 OK、201 Created等;3xx为重定向,如301永久跳转和302临时跳转;4xx为客户端错误,如400参数错误、404资源不存在;5xx是服务器错误,如500内部错误、503服务不可用。每种状态码都提供了典型场景说明和处理建议,帮助开发者准确识别和解决各类HTTP请求问题。正确理解状态码有助于快速定位问题,优化前后端交互流程。

2025-08-19 20:30:01 817

原创 MySQL 数据库事务四大特性(ACID)详解与实践

摘要:本文深入解析数据库事务的ACID特性。原子性通过undolog实现事务操作的全或无执行;一致性依赖约束校验和触发器确保数据合法性;隔离性通过MVCC和锁机制控制并发访问;持久性借助redolog和双写缓冲区保证数据永久存储。以银行转账和电商库存为例,详细演示了MySQL如何实现这些特性,并提供了关键验证方法。ACID特性共同保障了数据库事务的可靠性,是数据库系统的核心机制。

2025-08-18 23:58:22 446

原创 Linux虚拟机右上角网络图标消失——解决方法

本文介绍CentOS虚拟机开机后网络接口未自动激活的解决方案。现象表现为网络接口显示未托管状态,ifconfig无法显示但ifconfig -a可见。解决步骤包括:1)重置NetworkManager配置;2)重新加载系统服务;3)创建并激活eth0连接;4)可选将eth0更名为ens33。通过修改grub配置、更新网络接口文件等操作,最终使网络接口正常托管并自动连接。该方法适用于解决NetworkManager未正确管理网络接口导致的启动无网络问题。

2025-08-17 22:27:01 684

原创 Linux虚拟机远程连接-Connection timed out-解决方法

摘要:解决虚拟机远程连接问题需先检查防火墙状态(systemctl status firewalld)并关闭。若网络不通,通过ip addr show查看网卡状态,若显示DOWN则需启用网卡(ip link set ens33 up),使用DHCP获取IP(dhclient ens33)或手动配置IP地址和网关。配置完成后ping测试网络连通性,成功后可建立远程连接。关键步骤包括防火墙管理、网卡激活和IP配置。(150字)

2025-08-16 13:52:22 681

原创 Mybatis一级缓存解析+示例+失效场景

本文介绍了MyBatis一级缓存的核心机制与应用场景。一级缓存是SqlSession级别的缓存,默认开启,通过HashMap存储相同SQL查询结果,避免重复访问数据库。测试表明,同一SqlSession中相同查询会命中缓存,但执行更新操作或手动清除缓存后,缓存会失效。缓存失效场景包括:不同SqlSession、执行增删改操作、参数变化或配置flushCache="true"等。通过User实体类、Mapper接口和XML配置的示例,展示了MyBatis如何实现ORM映射和数据访问

2025-08-15 19:37:30 1282

原创 Mybatis动态SQL标签<<常用>>

MyBatis动态SQL标签使用指南摘要:本文介绍了MyBatis核心动态SQL标签的用法及常见问题处理。主要包含:1)标签实现条件判断,需注意空值处理;2)实现多分支选择;3)智能处理SQL片段连接符;4)实现集合遍历;5)解决跨数据库语法问题;

2025-08-14 19:32:10 741

原创 数据库设计的三大范式+示例——简单易懂

数据库三大范式(1NF-3NF)是规范表结构、减少冗余的核心准则。1NF要求字段原子性;2NF确保非主键字段完全依赖整个主键;3NF消除传递依赖(。通过逐级拆分,实现数据独立存储、避免异常,最终形成主键明确、字段间无冗余依赖的清晰结构。

2025-08-12 23:34:05 195

原创 关于Lombok注解@Data失效问题的解决方法(多种)

本文提供了解决Lombok问题的四种方案:1.在pom.xml中指定Lombok版本号并刷新Maven;2.移除optional标签和maven-compiler-plugin配置;3.检查并启用IDEA的Lombok插件;4.配置注解处理器设置。附加说明若遇JDK版本不兼容,建议升级Lombok版本。所有方案均需清除target后重新编译。

2025-08-09 14:13:25 572 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除