自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于枚举:后端请求对象通过openapi生成前端数据类型

【代码】关于枚举:后端请求对象通过openapi生成前端数据类型。

2026-06-09 08:25:14 32

原创 文档图标汇集

里表达“两种实现方式对照”也十分贴切——实验本来就有对照。已经固定下来作为“学习/实验/对比”的标志,它在这几个。若想让对照感更强、一眼就看出是两个东西在比较,可以换成。已经让这个图标成为“这里有值得学习的内容”的信号。若想保持整个项目“学习笔记”图标的统一性,就。

2026-05-04 10:52:47 223

原创 项目编码规范示例:性能日志

【代码】项目编码规范示例:性能日志。

2026-05-03 11:09:37 196

原创 项目示例:日期范围

【代码】项目示例:日期范围。

2026-05-02 16:15:53 49

原创 项目示例:登录(最佳实践)

【代码】项目示例:登录。

2026-05-02 14:14:15 89

原创 项目编码规范示例:日志查询

【代码】项目编码示例:日志查询。

2026-05-02 10:26:13 230

原创 非涉密系统

是指不涉及国家秘密的信息系统,即该系统不具备存储、处理或传输国家秘密的功能或权限。在这样的系统中,严禁上传、处理或传输任何国家秘密信息,以确保国家秘密的安全。非涉密系统通常用于处理公开或内部但非涉密的工作信息,其安全防护要求相对低于涉密系统。

2026-04-29 16:00:13 38

原创 规范说明:AES工具类使用规范及注意事项

本文档针对项目中AesUtils(AES加解密工具类)、AesKeyGenerator(密钥生成工具)的使用场景、操作规范、注意事项进行明确说明,确保开发人员正确使用,避免因使用不当导致加密失败、数据泄露、系统异常等问题,保障系统数据安全及功能稳定性。

2026-04-28 15:36:13 327

原创 规范说明:校验

为统一团队文件服务相关接口的校验标准,规范校验逻辑、注解使用、异常处理方式,减少重复开发、避免校验遗漏,提升代码可读性、可维护性和安全性,特制定本规范。

2026-04-28 10:39:25 567

原创 规范说明:工具类

本文档用于规范项目中工具类的编写标准,明确工具类在命名、结构、注释、实现及使用等方面的统一要求,确保所有工具类风格统一、语义清晰、可维护性强、健壮性高,适配项目现有代码风格,便于团队协作与后续迭代。

2026-04-28 10:38:34 243

原创 规范说明:常量类

本文档用于规范项目中常量类的编写标准,确保所有常量类风格统一、语义清晰、可维护性强,适配项目现有代码风格,便于团队协作与后续迭代。

2026-04-28 10:37:29 248

原创 Java AES 加解密工具类

【代码】Java AES 加解密工具类。

2026-04-27 12:59:43 484

原创 规范说明:Controller 层编码规范

Controller 只负责:接收参数 → 基础校验 → 调用 Service → 返回统一成功结构。不编写业务逻辑、不处理异常、不做数据计算。禁止在 Controller 使用try-catch,所有异常直接抛出,由全局异常处理器统一处理。参数非法、数据异常立即抛出异常,不继续执行后续逻辑。命名、注释、日志、结构、返回格式在项目内保持完全一致。不打印敏感信息(密码、密钥、身份证、手机号等)。

2026-04-26 08:41:21 394

原创 规范说明:MyBatis\-Plus 链式查询/更新/删除

目的:统一团队 MyBatis-Plus Lambda 链式调用写法,提升代码可读性、可维护性,降低团队协作成本;确保链式调用逻辑清晰、语义对齐 SQL 语法,同时保证功能一致性和性能最优。本规范适用于所有使用 MyBatis-Plus LambdaQueryWrapper、LambdaUpdateWrapper 的业务场景。

2026-04-26 08:37:25 378

原创 规范说明:PageHelper 分页查询

为统一项目中PageHelper分页查询的开发标准,规避分页异常、类型转换错误、查询逻辑混乱等问题,确保分页查询高效、稳定、可维护,明确分页查询的技术实现要求、参数规范、逻辑约束及异常处理,适用于项目中所有分页查询场景,同时适配SQL Server 2008 R2数据库及MyBatis-Plus框架。

2026-04-26 08:35:55 389

原创 Spring Boot 外置配置(不用改代码、不用重新编译、不用重新打包)

把原本打包在jar内部的放到jar 同级目录修改配置不用重新打包、不用重新编译、不用改代码典型场景:改数据库、改日志路径、改端口、切换环境必须修改启动命令,否则不识别!启动参数增加:plaintext注意:后缀 .yml 不用写。

2026-04-16 08:58:52 254

原创 E325: ATTENTIONFound a swap file by the name “/xxx.swp“,上次编辑文件时FinalShell 中断 / 掉线,Linux 留下了一个 临时缓存文件

Linux 留下了一个。,就是你上次编辑文件时。

2026-04-14 22:47:25 67

原创 Spring Boot3.2.12 + Vue3 项目Linux部署说明

【代码】Spring Boot3.2.12 + Vue3 项目 (lims)部署说明( 在刚安装好CentOS7的虚拟机上部署)

2026-04-14 10:52:23 259

原创 Linux CentOS 7 主机名永久修改(防 DHCP 覆盖)速查清单

localhost。

2026-04-14 10:25:32 247

原创 Linux CentOS 7 虚拟机修改计算名为 localhost,[ygb@MiWiFi-R3-srv ~]$改为[ygb@localhost ~]$

【代码】CentOS7 修改计算名为 localhost,[ygb@MiWiFi-R3-srv ~]$改为[ygb@localhost ~]$

2026-04-14 09:15:56 51

原创 Linux 设置IP

plaintext用 nmcli 命令 → 给 ens33 设静态IP → 立即生效 → 查看结果。

2026-04-13 14:59:29 1207

原创 VMware 关闭虚拟机打印功能

虚拟机开机提示。

2026-04-13 11:25:03 382

原创 VMware 桥接模式 + 设置IP

如果你把虚拟机网络模式切换为桥接(Bridged),就完全可以不用理会 VMnet8 虚拟网卡了。VMware 的三种主用网络模式对应着不同的虚拟网卡,它们各司其职,互不干扰。:这是下的虚拟交换机。你的虚拟机会通过它直接连入主机的物理网络。:专用于。:专用于。它负责建立一个独立的内部网络(即网段),并通过网络地址转换(NAT)让虚拟机共享主机的IP上网。简单来说,当虚拟机设置为桥接模式时,它直接利用 VMnet0 这座“网桥”连接到你的物理路由器,成为局域网中一台独立的设备。

2026-04-13 11:13:10 654

原创 项目实例:资金设置,标签页(7页):配置驱动架构、数据安全初始化、新增操作的特殊处理、懒加载与首屏兜底、滚动布局样式、解决表格切换闪烁

父组件:负责资金设置页面的整体布局、标签页管理、数据加载与操作调度。子组件:负责单个标签页内表格的渲染、编辑、保存、取消、删除以及新增时的滚动到底部。以下分别对两个组件进行标识和分析。维度初始版本(原始代码)最终版本改进效果代码结构7 个独立的if-else分支处理不同标签页,每个操作函数长达数十行配置驱动tabs数组 + 动态渲染,通用操作函数仅依赖代码量减少约60%,新增标签页只需添加配置,维护成本大幅降低表格切换闪烁每次切换标签页因列宽自适应而闪烁。

2026-04-10 20:07:11 364

原创 Vue3 解决表格切换闪烁的问题

2、未尾占位空列,固定右侧,不设置列宽,让其自动适应视窗宽度,因为其是空列,视觉上不会造成闪烁,最终会填充满整个表格的右侧,因为表格有边框,不然显示会有空隙。表格切换闪烁的原因:el-table-column 没有固定宽度,导致切换标签页时表格重新计算列宽产生视觉变化(闪烁形象)表格实际需求的分析:需要实现自动适应视窗宽度,表格至终不会有横向滚动条。1、显式设置列宽 width,解决表格来回切换出现的闪烁问题。最佳解决方案:显式设置列宽 + 未尾占位空列。

2026-04-10 20:01:33 42

原创 Vue3 动态导入与静态导入的示例对比

【代码】Vue3 动态导入与静态导入的示例对比。

2026-04-10 15:59:46 35

原创 Java 两个List(取交集/左连接)

您的代码,没有语法错误,且左连接的核心语义已实现:不在数据字典中的字段仍会返回,设为null。不过有一处:当或为null时,您使用continue跳过了该记录,而不是保留并设置。

2026-04-08 16:04:28 1450

原创 Vue3 使用 Store 的注意事项:官方推荐的方式始终是在 setup 或 composable 函数内部调用 useStore()

程序启动报错报错信息:pinia.js?

2026-04-06 21:58:18 76

原创 OpenAPI TS工具:@hey-api/openapi-ts(替换openapi-typescript,解决生成的联合类型无法对应Java枚举) 安装、配置、应用、卸载、介绍

查询请求对象/*** 资金调整查询请求对象* @param keyword 搜索关键字(仅用于搜索模式,与高级条件互斥)* @param capitalNo 资金序号* @param capitalName 资金名称* @param capitalType 资金类别* @param capitalSource 资金来源* @param adjustReason 调整理由* @param adjustTotal 调整金额* @param payType 支出分类。

2026-04-06 13:15:44 521

原创 IDEA清理无用import方法、VS Code开发Vue3项目清理无用import(Shift+Alt+O)

想在 IntelliJ IDEA 里一键清理无用的import,最直接的方法就是使用「优化导入」功能。:按下(Windows/Linux) 或(Mac)。:依次点击顶部菜单栏Code->。执行后,IDEA 会立刻清除当前文件里所有未被使用的导入,非常方便。如果想一次性清理整个项目,先点击左侧的项目根目录,再按快捷键或使用菜单即可。

2026-04-06 07:50:24 476

原创 OpenAPI TS工具对比分析(获取适合项目实际情况的最佳方案@hey-api/openapi-ts):解决openapi-typescript生成的联合类型无法对应Java枚举(命名映射问题)

总的来说,选择哪个工具,本质上取决于你对“类型安全”的需求层次。是解决“是什么类型”这一基础问题的利器。而及其同类工具,则是在此基础上,进一步解决“如何用”和“如何更好地集成”的问题。希望这份对比能帮你找到最适合自己项目的工具~但是openapi-typescript解决不了Java枚举和TypeScript枚举的问题呀你说得非常对,这确实是的一个核心痛点:它生成的联合类型 (Union Type),无法直接对应 Java 后端的枚举,特别是在命名和 IDE 智能提示方面存在短板。

2026-04-05 16:25:30 388

原创 OpenAPI TS工具:openapi-typescript 安装、配置、应用、卸载、介绍

是一个专注于将 OpenAPI 规范转换为纯 TypeScript 类型定义的工具。它利用 Node.js 环境,无需 Java 或运行后端服务即可快速生成类型,能显著提升前后端协作的效率与代码质量。特性核心产出纯 TypeScript 类型完整的 API 客户端(含请求函数)API 客户端及类型运行时开销零有(包含请求逻辑)有(包含请求逻辑)灵活性/自由度高。只提供类型,可与任何 HTTP 客户端自由搭配中。提供现成的客户端代码,但可能需要适应其风格中。提供现成的客户端代码适用场景。

2026-04-04 18:36:19 203

原创 OpenAPI TS工具:vite-plugin-openapi-ts 安装、配置、卸载、介绍

【代码】vite-plugin-openapi-ts 安装和配置。

2026-04-04 18:18:42 67

原创 项目实际情况:已经开发一段时间,现在后端引入SpringDoc/OpenAPI,前端采用哪个方案更合适?用vite-plugin-openapi-ts?还是用openapi-typescript

推荐工具核心优势:容忍文档不完整,与现有代码和谐共存,改造成本最低,立即解决类型同步问题。长期价值:你仍然保留对请求逻辑的完全控制(axios 拦截器、错误处理、取消请求等),同时享受类型安全。这个方案能让你在今天之内解决所有类型报错,并让后续开发中前后端类型自动同步。如果生成过程中遇到具体的类型推导问题(比如嵌套路径太深),我可以帮你写几个辅助类型来简化提取过程。

2026-04-04 18:13:18 215

原创 现行项目(后端文档不完整:暂时无法为每个DTO增加@schema注解):弃用 vite-plugin-openapi-ts,改用 openapi-typescript(只生成类型,不生成客户端)

当前问题根源:后端 OpenAPI 文档不完整 →生成的客户端代码引用了不存在的类型 → 编译报错。最快解决方案:放弃客户端生成工具,改用只生成类型,手动编写请求函数。时间成本:5 分钟。后续收益:不再受生成工具和文档完整性的困扰,类型安全依然有保障。

2026-04-04 17:49:57 326

原创 Vue3+Vite+TS技术栈,API生成工具(vite-plugin-openapi-ts/Orval/@hey-api/openapi-typescript-codegenscript)

想稳定、不折腾:直接选择 @hey-api/openapi-ts,它能满足大部分需求,且有官方团队保障。希望最大化开发效率:可以尝试 vite-plugin-openapi-ts,体验 Vite 插件带来的自动更新特性。追求高级功能:如果你的项目需要处理复杂的服务端状态,Orval与 Vue Query 的组合将提供强大的支持。这几种工具都能极大地提升开发体验。

2026-04-04 16:40:48 346

原创 单人全栈API生成工具:后端集成 springdoc-openapi、前端集成 openapi-typescript(轻量,只生成类型),配置生成前端类型代码的脚本命令

立即行动:在后端加上,前端用。以后你只需要修改 Java 类,运行一条命令就能得到最新的前端类型定义,彻底告别重复劳动。

2026-04-04 16:27:01 404

原创 代码生成工具讲解:Swagger Codegen / OpenAPI Generator 与 openapi-typescript/vite-plugin-openapi-ts

OpenAPI Generator 是“瑞士军刀”,功能全、语言多、代码重;openapi-typescript 是“手术刀”,专攻 TypeScript、精确、轻量。对于你的 Vue 3 + Vite 项目,如果只需要类型安全和简单的请求封装,更合适;如果未来需要生成其他语言的 SDK,则考虑 OpenAPI Generator。

2026-04-04 16:04:51 351

原创 术语讲解:OpenAPI、OpenAPI(Swagger)、Swagger、SpringDoc

OpenAPI 是“标准”,Swagger 是“前任工具”,SpringDoc 是“Spring 里的实现”。

2026-04-04 16:02:55 426

原创 在 MyBatis 的映射元素 <resultMap> 中,<id> 和 <result> 都用于将查询结果集的列映射到 Java 对象的属性

是 MyBatis 中最重要的映射元素之一,用于定义如何将 SQL 查询结果集的列映射到 Java 对象的属性。它支持:简单的属性映射(<result>主键标识(<id>关联映射(集合映射(鉴别器(当结果集包含多表关联时,能够精确控制对象的嵌套结构。<id>和<result>都是列与属性的映射,但<id>额外承担了“对象标识”的语义,用于 MyBatis 内部的缓存和对象复用。在复杂映射(尤其是关联查询)中,正确使用<id>可以避免重复对象创建,保证内存效率和对象引用的正确性。

2026-04-02 10:43:25 225

空空如也

空空如也

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

TA关注的人

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