- 博客(197)
- 资源 (10)
- 问答 (9)
- 收藏
- 关注
原创 【SpringAI】8.通过json动态添加mcp服务
springai接入mcp,从数据库读取mcp配置,前端通过json动态添加mcp服务 ,mcp工具查询
2025-08-01 16:24:34
795
3
原创 【SpringAI】7. 基于 milvus 的向量检索
本文介绍了如何在SpringAI中使用Milvus实现向量检索功能。主要内容包括:1) 推荐使用云服务快速启动Milvus实例;2) 通过Docker部署可视化工具Attu连接Milvus;3) 添加SpringAI-Milvus依赖并手动配置Bean;4) 实现文档向量化存储和检索方法,利用Metadata实现知识隔离;5) 提供测试接口用于文件向量化和向量检索。该方法支持灵活切换向量模型,适用于构建基于向量数据库的智能应用。
2025-07-12 15:28:52
809
2
转载 【SpringAI】5.Memory对话记忆实战指南
Spring AI Chat Memory 提供了两种对话记忆存储方案:本地内存(Local)和JDBC数据库存储。本地内存方案配置简单、响应快,适合开发测试环境,但数据不持久化;JDBC方案通过MySQL数据库持久化对话历史,支持多会话隔离和消息窗口限制(如20条消息)。两种方案都通过ChatMemory接口统一管理,使用MessageChatMemoryAdvisor自动处理消息存储和检索,关键通过CONVERSATION_ID参数区分不同会话。JDBC方案需预先创建包含conversation_id、
2025-07-09 10:29:49
360
原创 【Springai】项目实战进度和规划
《springai-novel:基于Spring AI的现代化学习实践项目》 该项目是前后端分离的AI实践应用,前端采用Vue3+TypeScript+Vite+Naive UI技术栈,后端使用JDK17+Spring AI+MySQL+Milvus+Ollama组合。目前已实现基础聊天功能、会话记忆、模型切换、多模态识别等核心功能,并搭建了可视化界面和提示词模板系统。未来计划扩展智能体管理、知识库检索、图像/音频模型测试等高级功能。项目代码已开源,展示了AI对话、多模态识别等功能的实际运行效果。该项目为开
2025-06-30 20:53:33
379
原创 【SpringAI】4.多模态提问
SpringAI支持多模态输入,可同时处理文本和图像内容。核心使用Media类表示媒体内容,通过UserMessage.builder()构建多模态消息。代码实现包括:将Base64图像转为Media对象,根据有无媒体选择不同消息构建方式,添加系统提示词后调用模型处理。关键注意事项:接口需为POST,注意文件大小限制和模型兼容性,图像处理性能较慢时应避免过多上下文。该功能适用于图像描述、视觉问答等场景。
2025-06-30 20:41:22
450
原创 【SpringAI】3.结构化输出,初级版
本文介绍了如何简化SpringAI流式接口的输出内容。原始接口返回的ChatResponse包含大量元数据,而前端通常只关心文本内容。
2025-06-30 20:39:10
335
原创 【Springai】 2 指定模型的三种方式
在实际开发中,模型支持三种常用的模型指定方式:1yml 配置,2Prompt指定,3ChatModl切换。
2025-06-30 20:36:49
682
原创 【Spring AI】 1.接入 Ollama实践
本文介绍了将Spring AI与Ollama本地大模型结合的实践方案。主要内容包括:1) 项目配置,通过pom.xml添加Spring AI和Ollama依赖;2) 基础设置,在application.yml中配置Ollama服务地址和模型参数;3) 实现基础聊天接口和流式对话接口;4) 通过JPA实现数据库持久化记忆功能,包括关闭默认内存记忆、设计数据库表结构、读取历史消息组装Prompt等。文章提供了完整的代码示例和配置说明,帮助开发者快速构建带记忆功能的多轮对话系统。
2025-06-30 20:33:08
865
原创 Trae工具使用
已有项目可以先引用整个项目目录或者工作空间,让其整理归纳项目整体架构,编写完善的项目文档,然后补充新需求,并制定开发计划。这时AI会给出实现新需求需要做的计划安排,后续会话可以#项目文档,逐步实现新需求;trae默认以打开的项目根目录作为工作区,如果要将文件夹添加到工作区,这两个文件夹会处于并且的形式,需要重构索引,否则新加入的项目无法引用。项目文档既可以帮助我们整理需求和其他开发快速了解项目,也可以让大模型对整个项目有更准确的认识,避免输出超出预期的实现代码,后续会话可以都。
2025-03-20 16:34:14
3505
原创 【electron+vue3】使用JustAuth实现第三方登录(前后端完整版)
1. 去第三方平台拿到client-id和client-secret,并配置一个能够外网访问回调地址redirect-uri供第三方服务回调 2. 搭建后端服务,引入justauth-spring-boot-starter直接在配置文件中定义好第一步的三个参数,并提供获取登录页面的接口和回调接口 3. 前端项目中新建一个登录窗口和一个登录中转页面,登录窗口的url从第二步第一个接口获取,中转页面从第二步的第二个接口返回 4. 中转页面从url中读取登录成功的用户信息并存放到pinia中,关闭登录窗口
2024-10-29 18:03:55
1567
原创 spring boot 服务打包 exe
如果要指定application-pro.yml的配置,可以在exe所在目录复制项目中的application.yml并修改。打包前提,一个可以正常执行java -jar 的jar包。
2024-10-12 17:04:50
368
原创 使用Electron将vue项目改桌面程序
在没有开发完全之前,这个桌面程序可以当作一般vue网页来开发,启动用yarn serve 来启动要关闭桌面端默认打开的调试窗口,直接注释掉background.js中的win.webContents.openDevTools()
2024-09-27 16:59:25
654
原创 mybatis查询修改mysql的json字段
mysql5.7版本之后支持json字段类型,推荐mysql8版本,适用于属性不确定的个性化字段,比如:身份信息{“职业”,“学生”,“兴趣”:“打乒乓球”,“特长”:“跳高,书法”};图片信息{“日期”:“2023-12-12 22:12”,“尺寸”:“215*720”,“拍摄地”:“xxx”,“作者”:“xxx”};标签信息:[“历史”,“军事”,“都市”,“科幻”]。这部分信息每条数据差异较大,固定字段会大量冗余,使用json有较高的扩展性和自由度。
2024-02-02 15:34:33
1984
转载 MYSQL中JSON结构运用
字段可以无限扩展。而传统关系型数据库的列都需预先定义,想要扩展需要执行 ALTER TABLE … ADD COLUMN … 这样比较重的操作。需要注意是,JSON 类型是从 MySQL 5.7 版本开始支持的功能,而 8.0 版本解决了更新 JSON 的日志性能瓶颈。如果要在生产环境中使用 JSON 数据类型,强烈推荐使用 MySQL 8.0 版本。讲到这儿,你已经对 JSON 类型的基本概念有所了解了,接下来,我们进入实战环节:如何在业务中用好 JSON 类型?
2024-01-29 09:53:26
284
原创 vue分片上传视频并转换为m3u8文件并播放
基于若依开源框架的前后端分离版本的实践,后端java的springboot,前端若依的vue2,做一个分片上传视频并分段播放的功能,因为是小项目,并没有专门准备文件服务器和CDN服务,后端也是套用的若依的上传功能。
2023-11-09 11:14:33
4611
3
原创 坐标转换-使用geotools读取和转换地理空间表的坐标系(sqlserver、postgresql)
业务上通过GIS软件将空间数据导入到数据库时,因为不同的数据来源和软件设置,可能导入到数据库的空间表坐标系是各种各样的。如果要把数据库空间表发布到geoserver并且统一坐标系,只是在geoserver单纯的设置坐标系只是改了定义并没有实际执行坐标转换,所以需要在数据库层面统一好坐标系,再发布到geoserver。
2023-08-06 11:18:59
7496
原创 动态定时任务-支持选择执行类和自定义参数(附前后端完整代码)
传统的定时任务,要么是使用@Scheduled在程序中写死的定时策略,要么是使用Quartz或者xxl-job定时任务框架,就很重。本文介绍的定时方案采用hutool工具包的CronUtil配合反射实现,支持选择定时任务类,自定义参数,主打轻量、灵活。此方案也是借鉴的小诺开源框架,测试页面套用的若依的定时任务页面,在那基础上稍加改动就好
2023-07-21 16:54:20
4590
7
原创 windows安装gitlab-runner提交gitlab自动打包maven包
私服gitlab,想使用gitlab的ci/cd自动打包,不需要将打好的包部署到远程服务器而是保存在本地的,可以在本地安装gitlab-runner,打好的包直接在本地生成。在maven项目的跟目录下新建.gitlab-ci.yml,因为不需要打包后还放入线上容器运行,所以只需要一个package步骤就好,将包输出到指定目录并添加上时间戳。maven 的安装需要依赖 jdk 的安装,所以必须先安装完成 jdk 且配置好 jdk 环境变量后在进行 maven 的安装!注册到指定的 gitlab。
2023-07-12 16:12:23
5610
原创 GeoServer系列-发布WMTS切片服务
WMTS弥补了WMS不能提供分块地图的不足。WMS针对提供可定制地图的服务,是一个动态数据或用户定制地图(需结合SLD标准)的理想解决办法。GeoServer发布WMST是在已经发布好WMS服务的基础上进行的,将已发布的WMS图层按级别切片,前端根据缩放级别分别加载各个小切片图片。
2023-06-29 11:12:30
9947
6
原创 地理数据处理-地理空间表的导入与查询
现在大部分数据库都支持地理空间的数据存储,可以方便的与GIS平台调用,比如Geoserver、ArcGis,但是如果使用不规范的空间表去发布图层预览可能会出现各种问题,比如坐标系错误,无法聚焦。本文将举例最常见的SQLServer和PostgreSQL的地理空间数据导入与查询
2023-06-25 11:11:10
5116
原创 ArcGis系列-坐标系转换
本文将介绍ArcGis三个需要坐标转换的场景:- Arcgis Pro设置项目坐标- GP分析指定输出结果坐标系- 使用python发布图层或要素服务时指定坐标系
2023-06-19 17:50:31
7613
原创 ArcGis系列-java发布GP分析结果(带样式)
继上一篇ArcGis系列-java调用GP分析,已经实现了gp工具的发布,调用,轮询,并已经分别保存好发布地图服务所需的矢量数据json,栅格数据tif文件和样式文件要将gp分析的结果发布为图层供前端展示,基础的python环境还是跟发布空间表一样,实现思路基本一样,同样是用本地的空项目构添加图层构建草稿文件上传发布。
2023-05-30 17:24:18
4215
原创 ArcGis系列-java调用GP分析
1. 创建GPServer,使用ArcgisPro添加GP工具运行,然后使用共享web服务发布运行成功的GP任务2. 根据发布成功的GPServer发布地址,解析出GP服务的输入参数和输出参数3. 前端输入gp服务需要的参数,发送给后端来异步提交4. 后端提交后创建轮询任务等待执行结果5. 收到执行结果后解析,根据输出结果类型(表格、矢量、栅格)分别处理和保存6. 后端将需要添加样式的矢量或栅格数据重新发布为MapServer7. 前端展示表格数据,渲染带样式的GP结果的MapServer
2023-05-30 16:50:36
6100
原创 ArcGis系列-java发布空间表为地图服务(map)
1. 使用java调用cmd命令执行python脚本2. python环境使用arcgis pro安装目录下的 \ArcGIS\Pro\bin\Python\envs\arcgispro-py33. 作为地图服务应该可以支持添加样式文件4. 发布表需要用到sde文件,使用java创建sde的代码可以看[这里](https://blog.youkuaiyun.com/u012796085/article/details/130942956)5. 发布表时,先在本地的空项目模板中添加数据库表作为图层,然后上传发布这
2023-05-30 10:47:03
4890
原创 ArcGis系列-java发布空间表为要素服务(feature)
1. 使用java调用cmd命令执行python脚本2. python环境使用arcgis pro安装目录下的 \ArcGIS\Pro\bin\Python\envs\arcgispro-py33. 发布数据库表前需要先用创建数据库的sde文件(创建sde文件不需要连接arcgis) 4. 发布表时,先在本地的空项目模板中添加数据库表作为图层,然后上传发布这个项目
2023-05-30 10:27:36
4774
java操作geoserver的工具类GeoServer,配合geoserver-manager包使用
2023-06-05
geoserver sqlserver 插件 包含 sqljdbc,gt-jdbc-sqlserver,mssql-jd
2023-02-01
jdk8 window解压版
2022-11-22
GaussDB A 8.0.0 产品文档 09.chm
2022-11-04
高德地图定位demo
2017-10-17
树形表格js
2018-05-17
java 检查表情字符
2021-03-10
JRebel激活启动之后,tomcat或者xml需要配置什么
2017-10-05
JRebel打开启动tomcat报错,找不到热部署的配置
2017-10-05
IDEA启动报错 Abnormal build process termination
2018-07-24
teamleaf整合shiro标签springboot启动报错
2018-04-10
datagrid加载的数据与Controller返回的数据不一致
2018-03-28
cvc-elt.1: 找不到元素 'configuration' 的声明
2017-10-06
if ("${requestScope.info}" == 0){}没反应
2016-04-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅