乐于分享
好东西不私藏

新项目上线 |《基于 Spring AI 的微服务智能表格助手 》!

新项目上线 |《基于 Spring AI 的微服务智能表格助手 》!

PART.01
项目背景
Chat2Excel是一款面向AI 应用课程的企业级项目,目标是让同学们理解 “大模型 + 企业级微服务” 如何协同解决业务问题。项目聚焦于“聊天获取 Excel 数据洞察”这一真实企业场景:业务人员只需以自然语言提问,系统即可完成 Excel 文件的解析数据校验知识抽取结果回传,从而显著降低手动整理和报表制作的时间成本。
后端采用 Spring Cloud 微服务架构,将系统拆分为六个微服务。在项目中使用的AI相关知识包括:LLM、提示词工程、MCP、Tool Calling、多模态、流式响应等。同时,项目集成了 Nginx、Nacos、MySQL、Redis等主流 Java 后端组件,技术栈丰富且前沿。
前端包含,基于 Vue 3 框架,使用 Vite 构建工具,以 JavaScript 为主要语言。
PART.02
项目效果
一句话提问,系统自动执行 SQL 查询、修改、生成可视化图表,数据洞察秒级获取,操作简单又高效。
上传文件
文件预览
AI 分析文件

PART.03
AI 应用是什么
AI 应用是将人工智能技术(如大语言模型、机器学习、计算机视觉等)与实际业务场景结合,解决特定问题、提升效率或创造新价值的落地形式。其核心本质是 “技术赋能业务”—— 通过 AI 的感知、理解、推理、生成能力,替代或辅助人工完成复杂、重复、高成本的工作,实现业务流程的智能化升级。
PART.04
学习AI应用需掌握的核心能力

AI 应用开发并非单一技术的堆叠,而是 “技术理解 + 业务落地 + 工程实现” 的综合能力体系,核心需掌握以下两大模块:
01 AI 核心技术
✅大语言模型(LLM)基础:理解模型的能力边界(如文本理解、内容生成、逻辑推理),掌握模型选型(如通义千问、DeepSeek 等)的核心逻辑;

✅提示词工程:学会通过精准的提示词设计,引导模型输出符合预期的结果,解决 “模型听不懂需求” 的核心问题;

✅工具调用(Tool Calling):掌握让 AI 连接外部工具的能力,突破模型 “仅能生成文本” 的局限,实现 “理解需求 + 执行操作” 的闭环;

✅流式响应:理解并实现实时交互反馈机制,提升用户体验,适配对话类、分析类应用场景;

✅多模型适配:学会集成不同类型、不同厂商的 AI 模型,根据业务需求灵活切换,提升应用的稳定性与兼容性。
02 工程化落地能力

✅微服务架构:掌握将 AI 应用拆分为独立服务的设计思路,确保系统高内聚、低耦合,支持高并发与可扩展性;

✅中间件集成:熟练使用缓存(Redis)、数据库(MySQL)、服务注册发现(Nacos)、容器化部署(Docker)等主流组件,为 AI 应用提供稳定的运行支撑;

✅前后端协同:理解 AI 应用的前后端交互逻辑(如流式数据传输、异步任务处理),实现 “用户需求输入 → 后端 AI 处理 → 前端结果展示” 的顺畅流转。

PART.05
AI 应用岗位
随着 AI 技术的爆发式发展,AI 应用相关岗位已成为职场 “高薪刚需” 赛道,市场需求持续增长,岗位类型丰富且覆盖全技术栈。
行业发展前景方面,AI 应用正从 “互联网行业” 向 “传统企业” 全面渗透,金融、制造、医疗、办公协同等领域的 AI 落地需求持续爆发,相关岗位缺口巨大。
同时,企业更青睐 “懂技术 + 能落地” 的复合型人才 —— 仅掌握 AI 理论不够,必须具备实际项目经验,而 Chat2Excel 作为企业级真实场景项目,正是弥补 “理论与实践鸿沟” 的核心载体。
PART.06
本项目学习什么?

Chat2Excel 项目完整复现了企业级 AI 应用的核心技术链路,将前文提到的 AI 应用能力全面落地,具体体现如下:

01 大模型集成与适配

项目集成了 DashScope(通义千问系列)、DeepSeek 等主流大模型,支持多模型切换,让学习者掌握 “根据业务需求选择模型、适配不同模型接口” 的核心技能;

通过封装统一的 AI 服务层(ai-service),屏蔽不同模型的接口差异,实现 “一次开发、多模型兼容”,符合企业级应用的可扩展设计思路。
02 提示词工程落地

在 “自然语言转数据处理指令” 场景中,通过精心设计的提示词模板,引导模型准确理解用户需求(如 “绘制各区域销售总金额折线图”),并拆解为可执行的步骤(如 “提取 Excel 中‘区域’‘销售金额’字段 → 按区域汇总 → 生成 SQL 查询 → 调用图表工具”);

✅针对不同类型的 Excel 数据处理需求(统计、筛选、可视化),设计差异化的提示词策略,让学习者掌握 “场景化提示词设计” 的核心方法。
03 Tool Calling 全流程实现

✅项目通过 MCP 服务(mcp-service)整合多种工具:Excel 解析工具(EasyExcel)、数据库查询工具、图表生成工具(Chart.js)、邮件发送工具等;

✅AI 服务接收用户需求后,通过模型判断是否需要调用工具、调用哪种工具,再通过 MCP 服务执行工具操作并获取结果,最终将结果整理为自然语言 + 可视化图表反馈给用户,完整实现 “需求理解 → 工具调用 → 结果整合” 的闭环,这正是企业级 AI 应用的核心流程。
04 流式响应与用户体验优化

✅项目支持流式对话处理,用户发送需求后,系统可实时返回处理进度(如 “正在解析 Excel 文件 → 正在执行 SQL 查询 → 正在生成图表”),而非等待全部流程完成后一次性返回;

✅这种设计不仅提升了用户体验,更让学习者掌握了 SSE(Server-Sent Events)等流式传输技术的工程实现,适配 AI 应用中 “长耗时任务实时反馈” 的典型场景。
05 AI 与微服务架构的融合

项目将 AI 能力封装为独立的 ai-service 微服务,与用户服务、文件服务、MCP 服务协同工作,符合企业级 “功能模块化、服务解耦” 的设计原则。
简言之,Chat2Excel 项目以 “AI 赋能数据处理” 为核心场景,将 AI 应用的核心技术(大模型适配、提示词工程、Tool Calling、流式响应)与企业级工程架构(微服务、中间件、前后端分离)深度结合,让学习者在实战中掌握 AI 应用开发的全链路技能,精准匹配职场岗位需求。

      PART.07
      项目技术架构

      本项目采用典型的分层微服务架构,实现前后端分离设计,并整合了多种云服务和中间件,遵循高内聚低耦合原则。下面按层级进行详细说明:
      01 浏览器层
      ✅自然语言操作 Excel,小白也能玩转数据处理。

      02 网关层
      ✅Nginx 反向代理 + 负载均衡,Spring Cloud Gateway 路由转发,吃透分布式系统入口设计。
      03 业务服务层
      这一层是业务逻辑的核心,由多个服务组成:

      ✅common-service(公共服务):通用工具 、 异常处理 、 日志切面

      ✅user-service(用户服务):注册登录、JWT 鉴权、权限管理

      ✅file-service(文件服务):Excel 解析、上传下载、OSS 存储适配

      ✅ai-service(AI 服务):大模型集成与适配、多模型调用、提示词工程、Tool Calling、流式响应

      ✅mcp-service(MCP 服务)工具集成、协议适配、执行引擎

      04 数据存储层

      MySQL:业务数据库,存储结构化数据。

      ✅Redis:作为缓存和会话存储,提升系统性能,支持分布式会话管理。

      ✅OSS:对象存储服务,用于存储用户上传的文件。

      05 基础设施层
      ✅docker容器:使用docker快速、干净部署中间件。

      ✅云服务器:提供项目运行所需要的环境。

      PART.08
      核心组件
      PART.09
      授课形式

      本次项目课程采用真实企业项目开发流程进行授课,从产品需求分析,到技术架构设计,到前后端接口约定,到代码开发,到项目测试,最后完成项目部署上线。

      PART.10
      项目功能

      PART.11
      项目量级

      项目总代码量约 1万行,包括后端 5 千行,前端 5 千行。项目共计 21 个后端接口,5 张数据库表。通过学习,大家既能接触新知识,又能巩固课堂所学,掌握企业主流开发框架,提升项目实操能力。

      PART.12
      项目学完,我们能收获什么?

      硬核技术:掌握 AI 核心概念(提示词编写、多模型适配、Tool Calling、流式响应),精通 Spring Cloud 微服务架构、分布式锁、JWT 鉴权等企业级技术。

      实战经验:完整经历 “需求→设计→开发→AI 集成→测试→部署” 全链路,提升项目实操与问题解决能力。

      简历加分:企业级项目直接写入简历,弥补实习空白,面试时能聊透架构设计、技术选型、踩坑经验,轻松打动面试官。

      ✅跨团队协作:体验前后端分离、微服务拆分模式,提升沟通与协作能力,提前适配职场工作场景。

      PART.13
      项目工程结构

      后端工程结构:
      chat2Excel                         // 第一层:父工程(聚合根)├── common-service                 // 第二层:公共基础包       └── src/main/java/...      //     第三层:通用工具配置基础模型       └── src/main/resources/... //     第三层:基础配置(yml 等)├── gateway-service                // 第二层:网关服务       └── src/main/java/...      //     第三层:网关启动路由配置       └── src/main/resources/... //     第三层:网关 yml 配置├── user-service                   // 第二层:用户服务       └── src/main/java/...      //     第三层:用户领域认证登录接口       └── src/main/resources/... //     第三层:服务配置(yml 等)├── file-service                   // 第二层:文件服务       └── src/main/java/...      //     第三层:文件上传/下载存储适配       └── src/main/resources/... //     第三层:服务配置├── ai-service                     // 第二层:AI 服务       └── src/main/java/...      //     第三层:AI 调用对话/推理流程       └── src/main/resources/... //     第三层:模型/服务配置├── mcp-service                    // 第二层:MCP 相关服务       └── src/main/java/...      //     第三层:MCP 适配/接口       └── src/main/resources/... //     第三层:服务配置├── deploy                         // 第二层:部署与运维       └── docker-compose-*.yml   //     第三层:基础设施编排(nacos/redis/mysql/nginx 等)       └── mysql|nacos|nginx|redis //     第三层:对应服务的配置与初始化脚本├── init.sql                       // 第二层:数据库初始化脚本├── pom.xml                        // 第二层:父工程 Maven 配置└── ReadMe.md                      // 第二层:项目说明         
      前端工程结构:
      frontend-service                  // 第一层:前端工程(Vue3 + Vite)├── src                           //     第二层:源代码目录│       └── api                   //         第三层:API 接口层│               └── ai            //             第四层:AI 服务接口│               └── auth          //             第四层:认证服务接口│               └── file          //             第四层:文件服务接口│       └── views                 //         第三层:视图页面层│               └── Login.vue     //             第四层:登录页面│               └── MainApp.vue    //             第四层:主应用容器│               └── MainApp       //             第四层:主应用子页面│                       └── AIAssistant.vue      // 第五层:AI 助手页面│                       └── FileManagement.vue   // 第五层:文件管理页面│                       └── FullscreenPreview.vue // 第五层:全屏预览页面│                       └── History.vue          // 第五层:历史记录页面│                       └── Profile.vue          // 第五层:个人资料页面│               └── components    //             第四层:视图组件(预留)│       └── components            //         第三层:公共组件层│               └── CommonPagination.vue //      第四层:通用分页组件│       └── utils                 //         第三层:工具函数层│               └── auth.js       //             第四层:认证工具│               └── eventBus.js   //             第四层:事件总线│               └── message.js    //             第四层:消息提示工具│               └── request.js    //             第四层:HTTP 请求封装│               └── sse.js        //             第四层:SSE 连接工具│       └── router                //         第三层:路由配置层│               └── index.js      //             第四层:路由定义│       └── hooks                 //         第三层:组合式函数层│               └── usePanelResize.js //         第四层:面板尺寸调整钩子│       └── assets                //         第三层:静态资源层│               └── image         //             第四层:图片资源│               └── style         //             第四层:样式资源│                       └── global.scss //       第五层:全局样式│       └── App.vue               //         第三层:根组件│       └── main.js               //         第三层:应用入口├── public                        //     第二层:公共静态资源目录├── dist                          //     第二层:构建输出目录├── .env                          //     第二层:设置访问后端地址├── index.html                    //     第二层:HTML 入口文件├── package.json                  //     第二层:项目依赖配置├── package-lock.json             //     第二层:依赖锁定文件└── vite.config.js                //     第二层:Vite 构建配置
      PART.14
      写在最后

      不管你是想深耕 Java 后端、解锁 AI 应用开发,还是想积累企业级项目经验冲刺高薪 offer,Chat2Excel 都是你的不二之选!跟着实战课程一步步拆解,从技术小白变身项目能手,简历添亮点,面试有底气,职场起跑线直接领先!

      [ 项目试听 ]