自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于Spring Boot + Vue在线的图片压缩功能

本文介绍了一个基于Spring Boot和Vue.js的图片压缩工具实现方案。该工具采用前后端分离架构,支持拖拽上传、参数调节(尺寸/质量/格式)、实时预览等功能。后端使用Java ImageIO实现智能尺寸计算和高质量压缩,通过双线性插值和抗锯齿处理保证图片质量;前端采用Vue.js+Element UI实现友好的用户界面,支持多种图片格式。系统实现了前后端双重压缩机制,既在前端使用CompressorJS进行初步压缩预览,又在后端进行二次精确压缩。核心代码展示了图片处理的完整流程,包括文件验证、尺寸计算

2025-08-10 16:58:04 465

原创 Java8 Lambda表达式

Java8 Lambda表达式是简洁的匿名函数写法,用于实现函数式接口。基本语法为(参数) -> 表达式,支持类型推断和简化写法。核心概念包括函数式接口(如Predicate、Consumer、Function、Supplier等)、方法引用(四种类型:静态/实例/构造方法引用)和Stream API(用于集合处理)。方法引用简化了Lambda表达式,Stream API提供了函数式集合操作方式,包括中间操作和终端操作。这些特性使Java代码更简洁、可读性更强。

2025-07-26 10:08:28 973

原创 python Spring Boot 慢SQL分析工具

Python脚本工具,用于分析Spring Boot MyBatis日志中的慢SQL查询。该工具支持识别标准格式的MyBatis日志,通过线程名匹配SQL执行记录,计算执行时间,并输出超过设定阈值的慢SQL到CSV文件

2025-07-12 20:49:18 494

原创 从零搭建Spring boot日志分析系统:一个高性能慢SQL检测工具的完整实现

基于Spring Boot的高性能慢SQL检测工具的实现方案。针对生产环境MyBatis日志文件过大、格式不统一等问题,系统采用多线程批处理、智能缓存管理和正则表达式模板等技术,实现了高效的日志分析功能。系统架构包含日志解析引擎、模板管理、性能监控和结果展示四大核心模块,通过ConcurrentHashMap提高并发性能,支持多种日志格式的正则匹配。此外,还分享了正则表达式优化、内存溢出解决等实践经验和前端虚拟滚动、实时搜索等性能优化技巧。该工具解决了大日志文件分析难题,为慢SQL检测提供了完整的解决方案。

2025-07-12 19:54:23 1015

原创 分布式下websocket响应实时响应redis方案

业务背景是需求要求通过外部接口将数据实时传数到前端展示。目前能想到的方案有:1.前端加个定时器请求接口;要求及时响应并且在并发环境下,无疑主动攻击自己的服务器。2.使用SseEmitter 后端异步推送,一次请求与后端保持长链接,但是只能后端向前端发送消息,是spring mvc自带,轻量级。3.使用websocket 双工通讯,更加灵活,但相对比SseEmitter 更重。

2023-10-21 12:03:04 807 1

原创 【无标题】

给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2。输入:nums = [0,0,1,1,1,2,2,3,3,4]输出:5, nums = [0,1,2,3,4]输出:2, nums = [1,2,_]输入:nums = [1,1,2]

2022-12-22 20:58:54 111 1

原创 【无标题】

解释:函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。解释:函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。输入:nums = [0,1,2,2,3,0,4,2], val = 2。元素的顺序可以改变。输入:nums = [3,2,2,3], val = 3。输出:5, nums = [0,1,4,0,3]

2022-12-22 20:46:35 95

原创 【无标题】

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。输入: nums = [0,1,0,3,12]输出: [1,3,12,0,0]将非零的数字放入数组,后再补0。输入: nums = [0]

2022-12-22 20:44:12 103

原创 关于SVN提交失败并且循环提示cleanUp操作问题

关于SVN提交失败并且循环提示cleanUp操作问题问题:循环式提醒 Clean Up解决:勾选: Break write locks 即可

2019-03-13 18:30:30 767

空空如也

空空如也

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

TA关注的人

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