- 博客(134)
- 问答 (1)
- 收藏
- 关注
原创 IDEA报错“资源找不到”?重启就好了!!?
摘要: IntelliJ IDEA报错“资源找不到”但重启后恢复,通常由IDE缓存/索引更新滞后、文件监听失效或杀毒软件干扰导致。重启强制重建缓存,但治本方案应:1)将项目目录、Maven仓库加入杀毒软件白名单;2)手动执行Maven Reload/clean或Invalidate Caches;3)检查资源文件路径及pom.xml配置。提示“杀毒软件拖慢性能”是关键线索,排除扫描路径可显著提升稳定性。(149字) 核心点: 重启本质是强制缓存重建 杀毒软件实时扫描是主要干扰源 手动刷新比盲目重启更高效 须
2025-07-16 13:23:18
172
原创 源码解读:File.listFiles
这段代码实现了一个获取目录下所有文件的方法。首先调用list()获取文件名数组,若为空则返回null。然后根据文件名数量创建对应长度的File数组,通过循环将每个文件名与当前目录路径组合成完整的File对象。最终返回包含目录下所有文件的File数组。需要注意:1)文件名顺序与系统相关;2)空目录返回空数组而非null;3)权限不足或非目录时返回null。示例中"/home/user"目录下的a.txt和b.txt会被转换为两个完整路径的File对象。
2025-07-15 14:31:29
353
原创 Redis 数据结构
盒子名字(数据结构)生活类比拿手好戏一句话记住它String便利贴存单个小物件、计数存一个,用它就对了Hash通讯录存多属性对象(用户、商品)存对象,用它整齐List传送带按顺序存,适合排队、消息要排队,用它方便Set去重水果篮存不重复的东西,找交集要去重,用它靠谱Zset带分数的排行榜能按分数排序,做排名要排序,用它灵活。
2025-07-15 14:17:01
713
原创 让豆包来告诉你:Redis是什么
Redis 是一款高性能的键值对 NoSQL 数据库,支持 string、hash、list、set、zset 等多种数据结构,采用单线程命令执行模型(6.0 后多线程处理网络 IO),读写性能可达 10 万 / 秒。其核心特性包括速度快(基于内存、C 语言实现、单线程避免竞争)、功能丰富(键过期、发布订阅、事务等)、支持持久化(RDB 和 AOF)、主从复制、高可用(哨兵)和分布式(集群)。典型应用场景有缓存、计数器、排行榜、分布式锁等,同时需注意缓存穿透、雪崩、击穿等问题的解决策略。
2025-07-14 17:17:42
831
原创 CentOS 安装 Redis 简明指南
本文介绍了CentOS7和CentOS8系统下Redis的安装配置方法。在CentOS7中通过SCL软件库安装Redis5,需创建符号链接简化操作路径,并详细说明了配置文件修改要点;CentOS8可直接通过yum安装,使用systemctl管理服务。重点讲解了关键配置参数如bind、protected-mode、daemonize的设置方法,以及工作目录和日志路径的规范。最后强调了安全注意事项,包括远程访问需配置密码或防火墙、路径优化建议和日志监控要求。两种系统的安装方式都涵盖了服务启动、停止等基本操作指南
2025-07-11 15:04:15
257
原创 优化MyBatis多表查询
本文深入解析MyBatis多表查询优化策略,提出了索引优化、聚合查询、小表驱动原则和防范笛卡尔积四大关键点。通过实际案例对比,展示了从1200ms到45ms的性能优化过程,重点解决了错误关联、索引缺失、违反驱动原则等问题。文章详细介绍了创建复合索引、分阶段聚合、动态索引提示等MyBatis层最佳实践,并提供了结果集监控预警机制。核心优化思想强调让最小数据集在最精确索引下完成聚合,警惕笛卡尔积陷阱,遵循"小表驱动大表"原则,为高并发系统提供稳定保障。
2025-07-10 14:31:15
854
原创 Docker项目部署(黑马商城项目为例)
本文介绍了基于Docker的Java项目全栈部署方案,包含容器网络管理、MySQL持久化部署、Java应用构建、Nginx反向代理配置等关键步骤。重点包括:1)创建自定义网络hmall-net实现容器互联;2)MySQL数据持久化配置;3)Java项目镜像构建与部署;4)Nginx静态资源管理与代理设置;5)常用容器管理命令及故障排查方法。部署时需注意所有容器加入同一网络,Java应用使用容器名连接数据库,挂载卷使用绝对路径,并及时检查容器日志。该方案实现了项目隔离、数据持久化和服务互联的完整部署流程。
2025-07-07 16:50:21
286
原创 练手的项目jdk都不同??一个jvms帮你搞定一切!
需频繁切换 JDK 版本?✅ 为不同项目固定 JDK?✅ 快速安装/卸载测试版 JDK?✅ 避免手动配置JAVA_HOME?✅ 保持开发/测试/生产环境 JDK 一致?遇到版本冲突问题时,JvmS能让你 10 秒内完成切换,是 Java 开发者的致命“版本救急包” 🚀。
2025-07-07 14:00:32
243
原创 你的项目怎么部署在 Docker 上?->从代码到容器化运行
《Docker部署全流程指南》摘要:本文系统介绍了Docker化项目部署的全过程。首先解析核心概念:镜像作为软件蓝图、容器是运行实例、Git用于代码解耦。接着详解四步部署法:1)编写含Git克隆的Dockerfile;2)构建多层镜像;3)启动容器并配置端口映射;4)验证服务。针对代码更新提供开发环境热更新和生产环境全量更新两种方案,并分享三大进阶技巧:私有仓库认证、多阶段构建优化、环境变量管理。最后给出常见问题解决方案和最佳实践建议,强调镜像精简、配置分离等原则。通过容器化部署,实现应用的快速迭代和稳定运
2025-07-04 09:16:25
258
原创 Docker安装(Ubuntu 20.04版本)
本文介绍了在Ubuntu系统中彻底卸载Docker旧版本并重新安装的完整流程。主要包括:1)使用apt命令彻底清除旧Docker及其残留文件;2)安装必要工具和Docker官方GPG密钥;3)设置官方APT仓库并安装Docker引擎;4)启动Docker服务。针对网络连接问题,提供了配置国内镜像源的方法(如腾讯云、DaoCloud等),需修改/etc/docker/daemon.json文件并重启服务。此外还包含修改Docker数据目录的指导。最后通过运行hello-world容器验证安装是否成功,并给出了
2025-07-04 09:15:40
1130
原创 代理?代理?傻傻分不清。。
代理!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2025-07-03 10:23:47
537
原创 Appium测试+Monkey测试
安装Appium客户端库(如Python的Appium-Python-Client)--pct-touch 40 \ # 触摸事件占40%--pct-motion 30 \ # 滑动事件占30%--ignore-timeouts \ # ANR后继续执行。--ignore-crashes \ # 崩溃后继续执行。-v -v -v \ # 最高级别日志。
2025-07-03 10:13:04
894
原创 RabbitMQ:消息队列的轻量级王者
RabbitMQ作为分布式系统的"消息快递员",在异步解耦、流量削峰、系统联动和延迟任务四大场景表现优异。它能实现服务解耦(如注册后异步发短信)、应对高并发(如秒杀活动)、触发多系统联动(如支付后更新库存)以及处理延迟任务(如订单超时取消)。其优势在于轻量易用、支持多语言和协议、提供可视化监控,且消息可靠性高。特别适合日处理百万级消息的中型系统,据统计超60%中型互联网公司采用RabbitMQ作为核心消息中间件,堪称分布式系统的"神经系统"。
2025-07-01 19:07:30
317
原创 微服务介绍
基于统一规范,企业可以在不同实现方案间(例如从Eureka迁移到Nacos,从Ribbon迁移到Spring Cloud LoadBalancer,从Hystrix迁移到Sentinel)进行相对平滑的技术演进或选型,选择最适合自身业务需求、性能要求和运维能力的组件。Spring Cloud 整合了经过大规模生产验证的优秀组件(服务发现、配置中心、API网关、熔断限流等),提供统一规范和一致的开发体验,拥有强大的社区支持、详尽的官方文档和丰富的实践案例,显著降低企业的学习曲线和长期运维难度。
2025-07-01 19:06:22
1494
原创 Spring Boot 统一功能处理:拦截器详解
Slf4j@Component@Override// 登录校验示例// 拦截请求// 放行解耦:将通用逻辑(如鉴权)从业务代码剥离复用:一次编写,全局生效可维护:统一修改拦截逻辑,避免散弹式修改安全:强制实施安全策略(如所有接口必须认证)通过拦截器 + 统一返回格式 + 统一异常处理,可构建高可维护性的 Spring Boot 后端架构,
2025-06-30 17:03:57
347
原创 Spring 事务与事务传播机制详解
本文介绍了Spring事务管理的核心概念及实践方法。主要内容包括:1)事务的ACID特性及基本操作;2)Spring的两种事务实现方式(编程式和声明式),重点推荐@Transactional注解的声明式事务;3)事务关键配置如异常回滚控制、隔离级别设置;4)七种事务传播机制及其适用场景,对比分析了REQUIRED、REQUIRES_NEW和NESTED的区别;5)事务使用的最佳实践建议,包括应用层级、异常处理、传播机制选择及性能优化等。文章强调应根据业务场景合理选择事务传播机制,以构建高可靠的事务处理系统。
2025-06-30 17:03:38
637
原创 Spring AOP理解
摘要:AOP(面向切面编程)通过代理模式实现无侵入式增强,核心包括切点(Pointcut)定义增强范围、通知(Advice)实现增强逻辑。Spring AOP提供五种通知类型(如@Around环绕通知)及两种切点表达式(execution和@annotation)。实现方式分为JDK动态代理(需接口)和CGLIB代理(无需接口),Spring Boot默认使用CGLIB。典型应用包括日志记录、性能监控等,通过@Aspect注解实现业务与通用逻辑解耦,提升代码复用性和可维护性。
2025-06-27 16:16:35
777
原创 MyBatis中的SQL理解
常用标签:<if>条件判断、<where>智能生成WHERE、<set>自动处理SET逗号、<foreach>遍历集合、<trim>去除多余字符XML与注解对比:XML更适合复杂动态SQL,支持ResultMap关联映射最佳实践:使用<where>替代WHERE 1=1批量操作采用<foreach>配合BATCH执行器更新操作必须包含条件防止全表更新项目实战:图书管理系统分页查询、逻辑删除、条件更新的动态SQL实现高级技巧:二级缓存配置、枚举处理、驼峰自动映射
2025-06-27 16:16:23
652
原创 Spring IoC&DI
《Spring IoC与DI》摘要 Spring框架通过IoC(控制反转)和DI(依赖注入)实现对象管理的革命性转变: 1️⃣ 核心组件分工明确:Spring是对象工厂,Spring MVC处理请求,Spring Boot简化配置 2️⃣ IoC将对象创建权交给容器,类比从"自己造车"变为"4S店提车",显著降低维护成本 3️⃣ DI提供三种注入方式(属性/构造器/Setter),其中构造器注入因线程安全被官方推荐 4️⃣ 五大注解(@Cont
2025-06-26 15:58:09
608
原创 报错信息:JSON parse error: Unrecognized token ... org.springframework.util.StreamUtils$NonClosingInputSt
【摘要】pytest框架报错显示JSON解析失败,原因是请求数据格式错误。当前使用data=data参数发送的是表单格式(idss=123&tape=4),而服务器期望JSON格式。解决方案是将data=data改为json=data参数,这样会自动:1)设置Content-Type为application/json;2)将字典转为标准JSON格式({ "id":123,"type":4 })。此修改可确保数据以正确格式发送,解决JSON解析异常问题。
2025-06-26 15:41:21
175
原创 Spring Web MVC ①
摘要: SpringMVC框架通过分层设计实现高效Web开发,核心组件包括Controller(路由控制)、Model(数据处理)和View(页面渲染)。注解驱动简化配置,如@RequestMapping定义接口路径,@RestController返回JSON数据。参数接收支持9种方式,包括URL参数、JSON和文件上传。响应策略涵盖静态页面、JSON、重定向等。状态管理通过Cookie-Session机制实现,强调安全性。分层架构(Controller/Service/Dao)提升代码复用性与可维护性。实
2025-06-25 16:06:34
841
原创 TCP/IP文件操作
本文系统化解析了TCP/IP协议栈中文件操作的核心机制,涵盖从内核缓冲区管理到应用层协议设计的全链路知识,提供多语言高性能实践方案,助力开发者构建稳定高效的网络系统。
2025-06-24 14:00:00
593
原创 常见的常用到的Elemtn-UI组件介绍与用法
本文总结了ElementUI常见组件的使用方法。布局类组件包括卡片容器(el-card)、栅格系统(el-row/el-col)和分割线(el-divider)。表单类组件涵盖表单容器(el-form)、表单项(el-form-item)及相关输入控件。数据展示类组件重点介绍了表格(el-table)及其列定义(el-table-column)、开关(el-switch)等。此外还包含分页器(pagination)和按钮(el-button)等常用组件。这些标准化组件可显著提升开发效率,建议根据实际需求选择
2025-06-24 13:15:00
921
原创 多线程:synchronized黑盒拆解与JUC图谱
第一层:CPU指令舞台 → CAS如何用一条指令完成三件事第二层:JVM变戏法 → synchronized锁升级的温柔陷阱第三层:并发武器库 → JUC工具类的场景化妙用
2025-06-20 16:00:00
505
原创 多线程:锁策略
假设世界和谐 → 乐观锁怀疑资源遭抢 → 悲观锁冲突短暂 → 自旋等待需要秩序 → 公平锁避免自我死锁 → 可重入锁读多写少 → 读写分离
2025-06-20 13:00:00
494
原创 Java回归循环理解
摘要:本文全面解析Java四种循环结构(传统for、增强for、while、do-while)的特点及适用场景,重点探讨多层嵌套循环的优化策略。通过分层注释、方法提取等技巧提升可读性,提供提前终止迭代、缓存结果等性能优化方案。针对复杂循环给出调试方法,并比较Stream API与传统循环的优劣。最后通过库存查询案例演示优化实践,强调循环设计应平衡可读性、可维护性与性能。核心观点指出:超过三层的嵌套循环通常需要重构,提倡合理使用增强for循环和Stream API来简化代码结构。
2025-06-19 15:00:00
1144
原创 XML重复查询一条Sql语句??怎么解决
摘要:排查发现服务存在SQL重复执行和日志失效问题,根因是DTO层缺少@Data注解导致日志无法输出有效信息,且Controller层未校验参数。解决方案包括:1)为DTO添加@Data生成必要方法;2)强化Controller层的参数校验和日志输出;3)完善注释规范。核心教训表明Controller层必须严格把控数据质量,DTO缺失基础注解会引发调试困难、空值穿透和性能问题。修复关键在于将Controller层建设为数据安全关卡,通过规范化的DTO和系统校验机制预防问题蔓延。
2025-06-19 14:10:20
525
原创 多线程-线程池原理
核心理念:通过线程复用降低创建/销毁线程的开销资源复用优势:四种常用线程池:三、线程池参数深度解析ThreadPoolExecutor七维参数:拒绝策略对比:自定义线程池组件:线程池工作流程:三大核心防御策略:隔离策略(Isolation) 只读策略(Read-Only)同步策略(Synchronization) 六、线程 vs 进程关键差异 维度 线程(Thread) 进程(Process) 资源开
2025-06-17 18:36:42
767
原创 Java线程安全与同步机制理解
本文探讨了多线程编程中的线程安全问题,分析了count++操作存在的非原子性问题及其导致的线程不安全情况。文章阐述了线程安全三要素:原子性(通过synchronized实现)、可见性(通过volatile实现)和有序性(防止指令重排序)。同时介绍了synchronized的可重入特性和Java标准库中的线程安全类(如ConcurrentHashMap)。最后强调正确使用同步工具和理解线程安全要素对于编写健壮多线程程序的重要性。
2025-06-17 11:30:00
629
原创 Java线程通信与并发
一、线程同步与等待机制wait 前用 while 检查条件(非 if);notifyAll 优于 notify(防止信号丢失);同步块外部的状态检查无效 ;二、单例模式实现方式追求简单:静态内部类实现 ;显式控制延迟加载:;无特殊要求:枚举单例(保证序列化安全) 三、队列选择与高并发优化手工实现:理解底层同步机制 生产环境:优先使用 LinkedBlockingQueue; 高吞吐量:考虑 Disruptor 无锁队列
2025-06-16 19:41:20
352
原创 Thread类大揭秘:线程
🧬 构造线程:先领"身份证"(Thread对象),持"任务卡"(Runnable)上岗🚥 状态流转:理解六个状态切换是调试多线程的必修课⚔️ 中断艺术:interrupt()不是强制终结,而是礼貌协商🔍 调优神器:JConsole是线程世界的"监控摄像头
2025-06-16 19:14:52
563
原创 多线程简单理解
《Java多线程编程入门指南》摘要:本文生动讲解了Java多线程的核心概念。通过银行柜员比喻,形象说明线程作为程序执行单元的特性:线程共享进程内存资源,是CPU调度最小单位。演示了三种创建线程方式(继承Thread、实现Runnable、Lambda表达式),并对比其适用场景。通过10亿次计算实验证明,合理使用多线程可显著提升性能(测试中耗时从720ms降至399ms)。文末强调关键原则:线程数量不宜超过CPU核数、共享资源需谨慎处理、线程调度具有不确定性。预告后续将探讨线程安全问题。
2025-06-16 19:07:56
284
原创 Spring Boot 分层架构与数据流转详解
本文解析了后端开发中的核心分层架构。主要包含Controller层(处理HTTP请求)、Service层(业务逻辑)、Mapper层(数据库操作)、Entity层(数据库映射)。重点介绍了DTO(接收请求数据)和VO(返回响应数据)的设计要点:DTO用于参数校验和接收前端数据,VO则对敏感字段脱敏并格式化展示数据。文章强调分层职责隔离的重要性,指出常见错误做法(如直接返回Entity),并给出数据流转的最佳实践。通过明确的分层设计,可构建更安全、易维护的系统架构。
2025-06-10 17:52:59
1002
2
原创 接口:Spring Boot + Vue 框架的新手大魔王(后端解释)
三层架构及其协作流程:Controller层作为请求入口,负责接收DTO并返回包装后的R响应(包含VO);Service层处理核心业务逻辑,进行DTO/Entity/VO转换;Mapper层执行数据库CRUD操作。重点讲解了DTO(数据传输)、VO(视图展示)和R(统一响应)三个核心概念的区别与配合。通过"创建用户"的完整案例,展示了从Vue前端发起请求到SpringBoot后端处理并返回数据的全链路流程,强调了前后端分离开发中清晰的接口定义和规范的数据传输的重要性
2025-06-05 17:21:13
976
原创 接口:Spring Boot + Vue 框架的新手大魔王(前端解释)
接口交互。前端Vue通过api文件夹中的axios请求函数(GET/POST/PUT/DELETE)向后端发送请求,注意设置URL、方法和Content-Type(常用application/json)。强调手动编写JS代码的重要性,避免依赖AI生成代码。在Vue组件中导入并调用这些API函数,使用async/await处理异步请求。后端SpringBoot提供对应接口,完成数据交互。全文采用生活化比喻,帮助初学者快速理解前后端通信机制。
2025-06-05 17:12:52
526
原创 Ubuntu安装Docker命令清单(以20.04为例)
Ubuntu 20.04安装Docker完整指南:1)卸载旧版本后,通过添加官方GPG密钥和仓库源进行安装;2)完成基础安装后需配置镜像加速(建议使用国内源)和数据目录迁移;3)常见问题包括服务启动失败和权限问题,可通过reload服务和用户组配置解决;4)安装后需验证版本、测试容器运行并检查服务状态;5)系统要求64位Ubuntu≥18.04,内核≥5.4。附注包含网络端口配置和彻底卸载方法。
2025-06-03 14:27:22
611
与我的基于JSP、java、Tomcat三者的项目实战-校园交易平台系统所搭配可以使用的ppt项目展示,有需要的可以自取
2024-08-07
计算机网络实验(实验报告)-基于eNSP操作(包含真机操作截图)(万字爆更)-华为
2024-07-09
求告诉我详细的过程 急!
2022-01-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人