自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 递归算法优化实战:从栈溢出到高效遍历的完整解决方案

在一个指标管理系统中,指标间的复杂引用关系导致递归查询面临栈溢出风险。本文详细介绍了如何将深度优先递归转换为广度优先迭代,通过队列代替调用栈、批量查询代替单次查询等优化策略,不仅彻底解决了深层递归的稳定性问题,还将数据库查询次数从N次降至⌈N/50⌉次,性能提升数十倍。这是一次从理论到实践的完整算法优化案例,对处理树形结构和依赖关系查询具有重要参考价值。

2025-11-26 09:32:57 946

原创 护理系统analyze接口性能优化(01)

本文对QualityAnalysisController.analyze()接口进行了多阶段优化,最终实现65%以上的性能提升。优化前响应时间为1.3秒,经过SQL查询优化(减少5-6次查询)、代码重复优化(减少50%重复代码)、批量操作优化(20次操作降为3次)及异常处理改进后,响应时间降至300-450毫秒。优化措施包括重构关联查询SQL、提取公共方法、实现批量操作以及完善异常处理机制,显著提升了接口性能和代码质量。

2025-11-24 16:50:34 960

原创 JDBC工具类 + FreeMarker模板:彻底解决动态SQL的安全隐患

本文记录了一个企业级医院护理管理系统从发现严重SQL注入漏洞到完成安全重构的完整过程。原有代码使用${}参数化拼接存在极大安全风险,我们通过设计JDB C工具类和FreeMarker模板引擎,实现了动态SQL的安全生成。文章详细介绍了输入验证、数据类型映射、事务管理、异常处理等关键技术细节,并提供完整的测 试验证方案。此次重构不仅消除了安全风险,更建立了一套可复用的安全编码标准,为团队后续开发提供了重要参考。

2025-11-07 16:51:07 1046

原创 PgSQL函数开发手册:日常查阅与复用指南

PgSQL函数开发摘要 核心语法模板 函数创建包括参数定义、返回类型、语言类型、稳定性关键字 稳定性优化:IMMUTABLE(输入输出唯一)、STABLE(事务内不变)、VOLATILE(结果可变) 权限控制:SECURITY DEFINER(执行者权限)、SECURITY INVOKER(调用者权限) 高频操作场景 标量函数:单值返回,用于计算或转换 表函数:返回多行数据,用于复杂查询 变量声明:DECLARE块定义局部变量 异常处理:BEGIN/EXCEPTION/END结构捕获错误 流程控制要点 条件

2025-09-25 17:34:28 918

原创 初级程序员学 Docker:从命令到部署的基础指南

Docker 容器化部署基础指南 本文介绍了 Docker 的核心概念和基础使用方法,主要内容包括: Docker 的核心优势:通过容器化实现"一次构建,随处运行",解决环境差异问题。 单容器部署三步骤:构建镜像(docker build)、查看镜像(docker images)、运行容器(docker run),并详细解释了各命令参数含义。 Dockerfile 文件编写指南:包含 FROM、RUN、COPY、ENV、WORKDIR、ENTRYPOINT 等核心指令的使用说明和示例。

2025-09-24 23:58:48 924

原创 从 selectBatchIds 切入:MyBatis-Plus 批量查询工具与 Java 集合、泛型的联动学习文档

MyBatis-Plus的selectBatchIds方法通过Collection<? extends Serializable>参数支持多种集合类型输入,并利用泛型T实现类型安全与代码复用。该方法采用面向接口编程思想,通过Collection接口适配List、Set等不同集合类型,同时使用上限通配符确保ID类型可序列化。返回值List<T>与BaseMapper的泛型绑定,自动适配不同实体类,既避免了代码冗余,又保证了编译期类型校验,有效提升开发效率和安全性。这种设计体现了Java

2025-09-16 22:41:40 1069

原创 Redis之持久化

​ Redis是一款非常好用的键值对数据库,其高性能和灵活性而闻名,它是基于内存的来实现的,所以它有很多优势也伴随着一些缺陷。​ 如,容量限制:内存并不是无限的,他很小且宝贵;易失:内存一断电就没了,Redis数据也会没有,还有一些安全性问题,而今天我们需要解决的是关于数据易失问题,提出数据持久化来解决。

2024-08-27 09:35:33 572

原创 MyBatis学习笔记---基础知识(一)

​ Mybatis 是一个半 ORM(对象关系映射)框架,它内部封装了 JDBC,开发时 只需要关注 SQL 语句本身。​ 他有两种实现方式:xml与注解。

2024-08-22 16:30:16 393

原创 JDBC学习(一)

关于JDBC的学习记录

2024-08-16 17:16:22 423

原创 mysql笔记

关于mysql学习的记录

2024-08-12 09:58:52 403

原创 jQuery笔记

关于jquery的学习记录

2024-08-12 09:57:56 320

原创 JavaScript笔记

关于原生js的学习记录

2024-08-12 09:56:58 321

原创 关于java学习笔记(一)

关于java基础的学习记录

2024-08-12 09:55:11 358

原创 关于对Servlet学习(一)

servlet是运行在服务器上的一个小程序,用来处理服务器请求的。通常浏览器发送访问请求,服务器接收请求,并对浏览器的请求作出相应的处理,而servlet就是对请求作出处理的组件。

2024-08-12 09:50:12 426

原创 记录第一次写的小java项目,点餐管理系统

记录第一次写的Java小项目,点餐管理系统,算是基础的面对过程的代码使用

2024-04-01 08:17:26 151

原创 使用元素 background-image 时遇到图片显示无效的情况

div的特性应该是默认100%的宽和高,我又试了一下。结果还是不行,是有点奇怪的,只能说对元素的理解不够咯!添加了宽和高,结果就可以了。

2024-03-07 09:48:25 1191

原创 sizeof()和strlen()函数总结

关于sizeof和strlen的笔记,后续补充中......

2022-09-12 22:24:03 671

原创 C语言基础笔记(1)

基础知识补充中......

2022-09-12 20:28:08 251

原创 结构体笔记

结构体笔记,持续补充中......

2022-03-07 20:24:30 128

原创 定点数笔记

关于定点数的笔记

2022-03-04 17:53:37 556

原创 日志:学习c语言,数字的排列顺序(如数字123的有几种排列)

文章目录前言一、操作分析二、实例代码1.代码2.读出数据总结前言零基础自学c语言第二天,今天我学习的案例是数字的排列顺序,有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数。 如果就单独的平时数学排列来看,如:123,124,134等,但是用代码生成就没那么简单了,今天就随着我的视角来看看我的学习情况吧!一、操作分析1.第一位是从1开始,通过for循环,然后依次自增12.在第一步的基础上,在进行for循环,确定第二...

2021-08-29 12:31:59 2314

原创 notepad++运行中文乱码日志

最近,小up主在用notepad++学习C语言,在遇到中文编写运行时会出现中文乱码,这就让我感到头疼Σ( ° △ °|||)︴这是神魔恋!解决方法:点击设置>>首选项>>新建,将utf-8换为ANSI,简单理解为GBK编码,之后在新建一个,重新编写或粘贴,此时运行结果就会显示正常的中文了注意:一定要在设置完成后,新建一个,因为设置只会生效在后面操作,之前的代码不会有改变这就是中文运行的结果了:...

2021-08-28 13:38:29 3671

空空如也

空空如也

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

TA关注的人

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