31k 28 分钟

# scaffold 项目之代码生成 - 单表 # 简介 在大部分项目中,其实整体架构出来了,后面的要加新功能基本按照已有的模块来加一份 CURD 操作,除了 curd 逻辑不一样,其他基本一致,比如:controller、service、mapper 等等,如果这些都要自己手动去写的话非常枯燥,且浪费时间,效率也低。 所以这种重复的代码可以交给程序来生成,项目提供了 codegen 代码生成器,我们只要重点关注对于一个需求怎么设计好表结构,就可以一键生成 前端页面+后端代码+单元测试+Swgger接口文档+Vaildator 参数校验 # 使用 # 数据库表结构设计 设计用户组的数据库表名为...
5.1k 5 分钟

# MCP 模型上下文协议 # 简介 MCP 定义了一套标准化的接口、数据格式和通信机制,专门用于在分布式部署的模型(或模型组件、AI Agent)之间交换、同步和维护与模型执行相关的上下文信息。 # 开始 MCP 模型上下文协议,其实就是给大模型安装了一双手,所有 MCP 服务按照这双手的规范,让这双手能调用自己的服务。 例子: 按照规范写了一个服务是可以调用本地文件,修改或者新建文件,那么模型就会通过这双手,去调用这个服务,而不需要我们自己去改 发邮箱 浏览器页面操作 查资料 生成图文内容 等等 推荐一个精选 mcp 服务的网站...
5.1k 5 分钟

# 微调某个领域模型 # 简介 在一个企业内部,往往都是专攻一个领域的,所以我们只需要这个领域的内容精准,效率高,这属于特定任务的需求,就要比动物的种类细分,鸟类、鱼类等 # 开始微调 大概步骤:做数据、装训练软件、测试训练结果、导出、合并 # 做数据 这一步可以说是最重要的一部分,数据质量好,训练的结果才会好,这里推荐 EasyDataSet 这个项目,它可以帮我生成微调需要的数据集,其中如果对生成不满意也可以自己微调 # 安装微调工具 大多数大模型相关的工具都和 python 有关,需要的 python 版本环境也有关,所以这里推荐用 canconda 来管理, 它就相当于开一个虚拟的...
3.5k 3 分钟

# scaffold 项目之登陆验证码 # 简介 项目基于 AJ-Captcha 实现行为验证码,包含滑动拼图、文字点选两种方式,UI 支持弹出和嵌入两种方式。 疑问:为什么采用行为验证码? 相比传统的「传统字符型验证码」的 “展示验证码 - 填写字符 - 比对答案” 的流程来说,「行为验证码」的 “展示验证码 - 操作 - 比对答案” 的流程,用户只需要使用鼠标产生指定的行为轨迹,不需要键盘手动输入,用户体验更好,更加难以被机器识别,更加安全可靠。 # 开始使用 # 实现原理 步骤: 用户访问应用页面,请求显示行为验证码 用户按照提示要求完成验证码拼图 /...
991 1 分钟

# scaffold 项目之工具类 Util # 简介 本小节,介绍项目中使用到的工具类,避免大家重复造轮子。 # Hutool 项目使用 Hutool 作为主工具库。Hutool 是国产的一个 Java 工具包,它可以帮助我们简化每一行代码,减少每一个方法,让 Java 语言也可以 “甜甜的”。 scaffold-common 包作为辅工具库,以 Utils 结尾,补充 Hutool 缺少的工具能力。 作用 Hutool Utils 数组工具 ArrayUtil ArrayUtil 集合工具 CollUtil CollectionUtils Map...
10k 9 分钟

# scaffold 项目之接口签名 # 简介 HTTP 接口签名是一种用于确保请求在传输过程中未被篡改的安全机制,常用于验证客户端请求的合法性和数据的完整性。其核心思想是通过对请求参数进行加密处理,生成唯一签名(Signature),服务器端再以相同规则生成签名并比对,从而判断请求是否被篡改或伪造。 # 开始使用 本项目封装了 scaffold-spring-boot-starter-protection 组件, 由它的 signature 包来做 HTTP 接口签名功能,它提供了 声明式 接口签名特性,可以提高安全性。例如说:项目给第三方提供 HTTP...
8.5k 8 分钟

# scaffold 项目之请求限流 # 简介 请求限流是一种通过控制单位时间内系统处理的请求数量,防止服务过载的技术手段。其核心目标包括: 保护系统稳定性:避免突发流量导致资源耗尽(如 CPU、内存、数据库连接)。 防止恶意攻击:如 DDoS 攻击或 API 滥用。 公平分配资源:确保所有用户或服务平等访问,避免少数用户占用过多资源。 # 常见的限流算法 算法 原理 特点 固定窗口 在固定时间窗口(如 1 分钟)内统计请求数,超过阈值则拒绝请求。 实现简单,但窗口切换时可能产生突发流量(如两窗口交界处请求翻倍)。 滑动窗口 将时间划分为更细粒度的子窗口(如每秒),动态统计最近 N...
6.1k 6 分钟

# scaffold 项目之幂等性 # 简介 幂等性 (防重复提交) 是指一个操作(或接口)无论执行多少次,其对系统状态的影响都与第一次执行的结果一致。 数学中的幂等性:例如, f(f(x)) = f(x) ,如绝对值函数 abs(abs(x)) = abs(x) 。 计算机领域:重复调用接口不会产生副作用(如重复扣款、重复生成订单)。 # 核心特点 结果一致性:多次执行结果与一次执行相同。 副作用可控:重复调用不会导致数据错误或逻辑混乱。 适用场景:网络请求重试、分布式事务、接口调用等需要容错的场景。 # 典型应用场景 场景 说明 HTTP 请求 例如: GET (查询)、...
4.3k 4 分钟

# Dify 搭建数据查询 AI 应用 # 简介 在大数据飞速发展的时代,现在企业基本都会向 AI 靠近,传统的系统和用户交互都是让用户在系统上自己操作,要查询什么内容通过对话的方式就能获取到结果,而不需要点这个菜单又去点哪个菜单,还要选条件在点查询,本篇文章就实现,怎么将自然语言转成 SQl 在去查询实际的数据。dify 官网 # 开始 首先我们需要 dify 环境,这里安装就不再赘述了,下面开始 # 知识库 需要将我们的业务 表结构 、 详细的字段说明 还有一些 sql的示例 上传到知识库,当用户提问提就会检索出来,让大模型理解在给出进行生成 sql...