- 博客(2463)
- 资源 (32)
- 收藏
- 关注
转载 Spring Boot 实战:SSE 实时通信方案设计与 WebSocket 深度对比
只需服务器到客户端的单向推送要求快速实现、低复杂性兼容现有 HTTP 基础设施(如认证、防火墙)
2025-05-05 15:30:42
7
转载 通用分页解决方案:简化项目开发中的分页难题
在实际项目开发过程中,分页功能的使用频率极高,尤其是针对不同数据表进行分页操作,往往是一件颇为繁琐的事情。不同的数据表结构、业务需求以及数据量大小,都可能导致分页实现方式的差异,这无疑增加了开发的复杂性和工作量。本文将分享一个通用分页解决方案,它能够对任意数据表实现分页,使用方法简单便捷,有效提升开发效率。
2025-04-24 08:11:55
12
转载 Spring Boot3+Vue2极速整合: 10分钟搭建DeepSeek AI对话系统
在生成式AI技术蓬勃发展的今天,大语言模型已成为企业智能化转型和个人效率提升的核心驱动力。作为国产大模型的优秀代表,DeepSeek凭借其卓越的中文语义理解能力和开发者友好的API生态,正在成为构建本土化AI应用的首选平台。本文将以Spring Boot3+Vue2全栈技术为基础,手把手带你打造一个具备以下特性的AI对话系统:实时流式对话交互体验;支持Markdown代码块/表格的专业级内容渲染;前端安全防护与响应式界面设计;高扩展性的API接入架构。
2025-04-22 08:53:42
76
转载 java对接Dify的聊天助手API(实战篇)
至此,后端已成功对接聊天对话的API,其他API操作同理,可以与前端快速的搭建AI对话聊天,基于知识库实现企业级需求!修改配置文件,由于Dify在本地部署,默认端口80与Dify冲突,否则造成服务不可用,所以修改为8080。前面的博客有讲到如何部署Dify以及简单使用,为了迎合企业级需求,快速搭建AI应用。目前idea版本2024.2,已成功破解,需要资料的可以加入技术群获取。测试该接口发现,需要认证信息,知道该怎么办了把,没错,启动前端!进入Dify的docker目录,cmd回车,执行如下命令。
2025-04-22 08:53:00
101
1
转载 Dify解除上传文件大小15MB限制
在使用Dify的知识库时,文件上传大小不能超过15MB。步骤一:打开Dify文件docker目录下的.env文件。步骤二:停止Dify服务后,重启。调整参数大小后,点击保存。否则,会提示错误信息。
2025-04-22 08:51:37
143
转载 接入SpringAI实现流式对话
本人正在打造技术交流群,欢迎志同道合的朋友一起探讨,一起努力,通过自己的努力,在技术岗位这条道路上走得更远。此次新增chatId字段,目的是为一次会话添加唯一标识,基于该标识存储会话记忆,目前使用的内存记忆功能,可以尝试使用向量数据库,永久有效。前面有讲到Python对接Deepseek实现对话,但基于现状,从事后端开发,侧重于Java,此次演示以SpringAI技术实现。此次基于SpringBoot工程演示,没有用到框架,一键启动,真方便。添加提示词功能,代码如下,重启后才可生效!步骤三:编写AI应用。
2025-04-22 08:50:45
37
转载 java对接Dify的工作流API(实战篇)
基于微服务架构的业务复杂度较高,在技术选型中我们采用Dify工作流来实现核心需求。Dify的工作流具备很多组件,大家可以根据需求灵活使用,此次演示为Demo,真实场景比这个要复杂哈。有些人就会问,Dify不是都实现了吗,为啥还要编写java代码去对接了,前端不是能对接python接口吗?前面的博客有讲到Dify工作流调接口查询数据以及调用Dify的聊天助手API,此博客需具备以上基础。测试文件上传,由于Demo版代码执行文件与工作流执行在一块,如果基于业务需求,中间会进行其他操作。步骤一:启动Dify。
2025-04-22 08:50:01
139
转载 Dify应用实战(18) - 发布成MCP服务
今天学习了将Dify系统开发的AI应用变成可供其他工具或者系统调用的MCP服务,从而打通了系统之间的壁垒。你的Dify应用将会直接为你的助手类工具使用,或者集成到现有应用中,能扩展其AI能力。终于MCP相关的话题可以告一段落了。从MCP是什么,到怎么开发,然后是怎么使用MCP,最后是自己化为MCP。期望读者能顺着麦金叔的脉络,真正的把这些学会,并融会贯通投入到自己的项目中。
2025-04-22 08:49:21
55
转载 SpringBoot 使用 TraceId 日志链路追踪!
用途:每一次链路,线程维度,添加最终的链路 ID traceId.MDC(Mapped Diagnostic Context) 诊断上下文映射,是@Slf4j提供的一个支持动态打印日志信息的工具。/*** 日志拦截器*/@Override//可以考虑让客户端传入链路ID,但需保证一定的复杂度唯一性;如果没使用默认UUID自动生成if (!returntrue;@Override// 请求处理完成后,清除MDC中的traceId,以免造成内存泄漏/**
2025-04-22 08:48:02
10
转载 基于数据库锁实现防重复提交
在Web应用开发中,重复提交问题是一个常见的挑战。当用户由于网络延迟、误操作等原因,多次点击提交按钮时,可能会导致相同的数据被多次插入到数据库中,从而引发数据一致性问题。为了解决这个问题,我们可以采用token机制,大多数实现是基于Redis实现,今天介绍如何结合数据库的悲观锁或乐观锁来实现对请求的有效验证,确保同一操作不会被重复执行。通过使用token机制结合数据库的悲观锁或乐观锁,我们可以有效地避免用户重复提交请求,保证数据的一致性和系统的稳定性。
2025-04-12 12:03:13
27
转载 实现一百万条数据的状态秒级更新!
点击上方“程序员蜗牛g”,选择“设为星标”跟蜗牛哥一起,每天进步一点点大厂程序员一枚 跟蜗牛一起 每天进步一点点31篇原创内容公众号为了提高订单状态更新的效率和系统的响应能力,我们决定采用分布式任务调度实现高效的订单状态批量更新。
2025-04-04 10:42:31
25
转载 多人同时导出 Excel 干崩服务器?产品让我实现一个排队导出功能!
引入EasyExcel百万级别的导出功能@Slf4j/*** 导出* @param response 输出流* @param pageSize 每页大小* @param t 导出条件* @param k Excel内容实体类* @param fileName 文件名称*/try {//查询导出总条数//页数i++) {//开始页//获取Excel导出信息String msg = "导出" + fileName + "异常";
2025-04-04 10:41:37
47
转载 性能炸裂!Spring Boot 3.4 + ThreadPoolTaskExecutor 批量插入百万数据!
在现代应用场景中,批量数据处理已经成为影响系统性能的关键因素之一。尤其是在大规模数据插入的过程中,传统的单线程方式往往难以满足高效数据处理的需求。,可以大幅度提升应用的性能,优化数据处理的效率,为企业级系统带来显著的收益!的最佳实践,提供完整的代码示例,确保数据的高效存储和一致性。提升大规模数据插入的效率,减少数据库压力,提高整体性能。,使数据插入任务并发执行,提高数据库写入吞吐量。在高并发、大数据量插入的场景下,传统的。,减少数据库锁竞争,提高吞吐量。,以适应不同负载的插入任务。
2025-04-04 10:40:38
20
转载 高效推送!Spring Boot 3.4 实现网页消息通知的 5 种最佳方案
在现代应用开发中,实时消息推送已成为提升用户体验的重要手段。无论是在线聊天、系统通知、金融数据更新,还是团队协作,服务器主动向浏览器推送信息的能力至关重要。本文将详细介绍 Spring Boot 3.4 中实现网页消息推送的五种主流方案,帮助开发者选择最适合的技术方案。
2025-03-31 08:47:43
87
转载 妙用Java 8中的 Function接口,消灭if...else(非常新颖的写法)
基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。Boot 仓库:https://gitee.com/zhijiantianya/ruoyi-vue-pro。项目地址:https://github.com/YunaiV/ruoyi-vue-pro。视频教程:https://doc.iocoder.cn/video/
2025-03-28 08:59:02
14
转载 Redis 项目常应用场景解析及实例
Redis以其独特的内存存储、丰富的数据类型、高效的原子操作及多种实用特性,成为现代项目开发中不可或缺的关键组件。以下将详细介绍Redis在多种常见场景下的应用,并结合Java代码实例进行说明。
2025-03-17 08:56:08
139
转载 Java高效压缩与解压实战:ZipUtils与GzipUtils工具类详解
文件压缩与解压是日常开发中的高频需求。本文提供两个完整的工具类(支持目录压缩)和(专注单文件处理),并附实战代码示例,助你轻松应对日志归档、数据传输等场景。
2025-03-15 11:47:02
62
转载 拒绝重复代码,封装一个多级菜单、多级评论、多级部门的统一工具类
来源:juejin.cn/post/7301909270907748378一、介绍介绍数据库字段设计二、统一工具类具体实现1. 定义接口,统一规范2. 编写工具类TreeNodeUtil三、测试你能看到很多人都在介绍如何实现多级菜单的效果,但是都有一个共同的缺点,那就是没有解决代码会重复开发的问题。如果我需要实现多级评论呢,是否又需要自己再写一遍?为了简化开发过程并提高代码的可维护性,我们可以创建一个统一的工具类来处理这些需求。在本文中,我将介绍如何使用SpringBoot创建一个返回多级菜单、多级评论、多
2025-03-15 11:42:30
43
转载 Spring 实现 3 种异步流式接口,干掉接口超时烦恼
这篇介绍三种实现异步流式接口的工具,算是 Spring 知识点的扫盲。使用起来比较简单,没有什么难点,但它们在实际业务中的应用场景还是很多的,通过这些工具,可以有效提高系统的性能和响应能力。文中 Demo Github 地址:https://github.com/chengxy-nds/Springboot-Notebook/tree/master/springboot101/%E9%80%9A%E7%94%A8%E5%8A%9F%E8%83%BD/springboot-streaming- End-
2025-03-15 11:41:39
54
转载 12 种分片算法
本文中我们讲解了所支持的12种分片算法,每种算法都具有独特的特点。在实际应用中,需要结合具体的业务场景来灵活选择和应用适合的分片算法。
2025-02-13 09:09:42
72
转载 线程池中线程抛了异常,这样处理太优雅了!
小富2025年02月05日 14:01北京大家好,我是小富~xiaofucode.com 以搞钱为源动力的程序员学习指南78篇原创内容公众号在实际开发中,我们常常会用到线程池,但任务一旦提交到线程池之后,如果发生异常之后,怎么处理?怎么获取到异常信息?在了解这个问题之前,可以先看一下 线程池的源码解析,从源码中我们知道了线程池的提交方式:submit和execute的区别,接下来分别使用他们执行带有异常的任务!看结果是怎么样的!
2025-02-05 14:11:10
92
转载 高并发订单系统设计:每天新增100w订单数据的分库分表方案
原创 Fox2025年02月05日 07:49湖南在电商和在线服务领域,订单处理系统面临着巨大的数据压力。每天新增 100 万条订单数据的场景,要求系统具备高并发处理能力和良好的可扩展性。本文将探讨如何通过分库分表的设计来支撑高并发的订单处理系统。
2025-02-05 11:35:03
154
转载 APP中的签到、补签、连续签到天数如何实现
签到,指在规定的簿册上签名或写一“到”字,表示本人已经到达。在APP中使用此功能,可以增加用户粘性和活跃度。一个有签到功能的APP,往往会提供补签功能,连续签到多少天会给予相关的奖励;而为了进一步增加用户粘性,还会提供签到任务功能,完成任务也可获取对应的奖励。功能用例本文带你实现一个包含上述用例的签到功能,看完以后你会发现,签到,没有你想的那么复杂!
2025-01-17 10:02:25
184
转载 SpringBoot官方提供的实时消息推送解决方案,真香!
SseEmitter是Spring Framework中用于服务器发送事件(Server-Sent Events, SSE)的类。SSE是一种允许服务器主动向客户端推送数据的技术,通常用于实现如实时通知、数据流等功能。其工作原理基于HTTP协议,客户端通过HTTP请求订阅服务器的事件流,服务器则通过SseEmitter对象持续向客户端发送事件。SseEmitter的核心特性单向通信:SSE是单向的,只允许服务器向客户端推送数据,客户端不能通过此通道向服务器发送数据。
2025-01-08 18:43:09
1054
转载 Spring Boot整合SSE:实现高效实时通信
Server-Sent Events(SSE)是一种允许服务器向客户端推送数据的技术,为实现实时更新提供了一种简单而有效的方法。传统轮询是客户端定期向服务器发起请求以获取最新数据的方式,这种方式不仅增加了服务器的压力,也导致了较高的延迟。而SSE则是由服务器主动推送更新给客户端,减少了不必要的请求次数,提高了性能和用户体验。SSE是一种基于HTTP的服务器推送技术。:相比传统的轮询机制,SSE能够减少不必要的请求,从而降低服务器负担并提高响应速度。,易于实现:相比WebSocket,SSE的实现更加简单。
2025-01-08 18:42:34
236
转载 DirectX修复工具增强版
在“高级”选项卡中,可以控制C++的修复模式,默认为智能模式,即当程序检测到系统中C++存在问题时提示修复,否则不提示。程序有更新系统c++功能。常见的命令有7类,分别是设置语言的命令、设置窗口模式的命令,设置安全级别的命令、开启强力修复的命令、设置c++修复模式的命令、控制Direct加速的命令、显示版权信息的命令。本程序为了应对一般电脑用户的使用,采用了易用的一键式设计,只要点击主界面上的“检测并修复”按钮,程序就会自动完成校验、检测、下载、修复以及注册的全部功能,无需用户的介入,大大降低了使用难度。
2025-01-08 16:09:26
1104
转载 使用注解优雅实现分布式锁
对于耗时业务和核心数据,不能让重复的请求同时操作数据,避免数据的不正确,所以要使用分布式锁来对它们进行保护。再来梳理一下设计流程:新建注解。
2025-01-08 10:36:32
65
转载 为粉丝定制的SpringBoot服务端组件,零修改直接上线生产!
Datapublic static final String SUCCESS_MESSAGE = "操作成功";参数校验:通过注解和分组校验进行数据验证。全局异常处理:通过实现统一的异常处理。接口统一响应与加密:通过进行返回体加密,确保接口数据的安全性。接口版本控制:使用自定义注解和条件判断来实现版本控制。接口签名与防重放攻击:通过Md5加密、签名验证和nonce来防止重放攻击和篡改数据。
2025-01-06 17:06:40
32
转载 这款分布式重试组件,治好了我的重试强迫症!
Easy-Retry是一款基于服务治理的重试组件,其基于CAP理论设计,具有操作简单、实时监控、后台配置、支持多样化退避策略、支持多种告警方法等特点。支持本地重试和远程重试两种模式,提供管理后台,使得重试任务可视化,可以方便的查看和管理重试任务。同时也可以在管理后台配置多种策略,针对不同的业务场景进行实时调整。单机链路管控限制链路重试结合DDL控制无效重试支持多种退避策略支持可视化配置支持动态关闭重试场景当然,如果你有兴趣加入到Easy-Retry和我们一起共建,也欢迎联系博主。
2025-01-05 20:04:41
118
转载 SpringBoot 3.4 官方实时消息推送解决方案,简单又高效!
SseEmitter是 Spring Framework 提供的一个工具类,用于实现服务端事件(Server-Sent Events, SSE)的通信。单向通信:服务器推送数据到客户端,客户端无法通过 SSE 通道发消息给服务器。基于 HTTP 协议:无需额外协议支持,易于实现和维护。自动重连:客户端会在连接中断时自动重试连接,提升可靠性。数据流格式:每条消息以开头,结束时以两个换行符\n\n分隔。
2025-01-05 15:26:16
142
转载 Spring Boot + WebSocket轻松打造实时通讯神器
在点对点消息中,我们使用了/queue/user/{recipient}作为目标,其中{recipient}是一个占位符,它的值将从消息头中获取。第一个参数是目标端点(与控制器中的@MessageMapping注解匹配),第二个参数是消息头(用于传递额外的信息,如点对点消息的接收者),第三个参数是消息体。:客户端通过HTTP请求与WebSocket服务端协商升级协议,请求中包含了WebSocket支持的版本号等信息,如Upgrade、Connection、WebSocket-Version等。
2025-01-03 09:07:52
180
转载 SpringBoot+ShardingSphere+mybatis-plus分库分表方案的实现
分库分表可以有效减少单个数据库或表的数据量,从而优化数据库性能。通过分库分表,可以将数据分散到多个数据库或多个表中,降低单个数据库或表的数据量,从而提高查询和写入性能。通过分片,可以显著提高系统的性能和可用性,同时降低了单个数据库节点的压力。ShardingSphere支持读写分离功能,能够将数据库的读写操作分散到不同的节点上,避免了数据更新导致的行锁,从而提高了系统的查询性能。ShardingSphere内置了很多自动化的特性,用户只需进行简单的配置即可实现分片和读写分离等功能,大大降低了使用难度。
2025-01-03 09:07:15
191
转载 SpringCloud Alibaba微服务实战之集成网关
是生态系统中的一个全新项目,用于构建基于Spring生态系统的API网关。旨在提供一种简单而有效的方式来路由到API,以及提供一些常见的网关功能,例如安全性,监控/度量,和限制速率等。的核心是基于和构建的,它具有高度的可扩展性和灵活性。使用了Reactive编程模型,可以处理高并发的请求,同时还提供了一些内置的过滤器,例如路由,限流,重试等。支持多种路由策略,包括基于路径,基于主机和基于请求头的路由,并且可以与多种服务发现和负载均衡器集成,例如和Kubernetes。
2024-12-31 09:05:23
91
转载 谈一谈三方接口调用方案设计
Token是什么?token即 访问令牌access token,用于接口中标识接口调用者的身份、凭证,减少用户名和密码的传输次数。一般情况下客户端(接口调用方)需要先向服务器端申请一个接口调用的账号,服务器会给出一个appId和一个appSecret(appSecret用于参数签名使用)注意appSecret保存到客户端,需要做一些安全处理,防止泄露。
2024-12-31 09:00:24
64
转载 为了偷懒,自己封装了一个自适配的数据单位转换工具类
第一步的封装程度已经够用了,就是传map标识出来哪些需要转换,对应转换枚举类型是什么。其实我感觉是够用的。但是么,为了用起来更加方便,或者说 更加地可拓展, 那么配合自定义注解是更nice的。开搞。创建一个自定义注解 ,JcBigDecConvert.java/****/怎么用?就是在我们的报表DTO里面,去标记字段。示例:ps:可以看到我们在字段上面使用了自定义注解/****/@Data//支付总金额//jc金额百分比//jc计数千分比。
2024-12-31 08:59:14
41
转载 dify案例分享-中国历史专家博客
今天我们就带大家dify新功能dify案例分享-中国历史专家博客的dify工作流,来感受一下dify的强大。感兴趣的小伙伴可以持续关注我的文章,今天的分享就到这里,我们下个文章见。项目体验地址。
2024-12-30 14:33:33
1787
转载 dify案例分享-基于多模态模型的发票比对
今天我们就带大家在上个文章中多个发票识别功能基础上再扩展一个新的发票比对功能的业务场景,来感受一下dify的强大。感兴趣的小伙伴可以持续关注我的文章,今天的分享就到这里,我们下个文章见。项目体验地址往期文章dify案例分享-基于多模态模型的发票识别2-多种发票识别dify案例分享-基于多模态模型的发票识别阅读 2577。
2024-12-30 14:30:28
402
转载 dify案例分享-基于多模态模型的发票识别
硅基流动是一家专注于人工智能基础设施和生成式AI技术的初创公司。硅基流动是致力于构建可扩展、标准化且高性能的生成式AI计算基础设施平台,提供包括SiliconCloud(模型云服务平台)、SiliconLLM(大型语言模型推理引擎)和OneDiff(高性能文本到图像/视频加速库)在内的多种软件解决方案。公司的网站https://siliconflow.cn目前公司有三个产品siliconCloud、siliconLLm、OneDiff该公司提供市面上主流模型,而且最关键是免费。
2024-12-30 14:27:17
4053
2
springmvc+mybatis+mysql+log4j.xml+logjdbc+maven+nexus+dubbo
2017-05-10
springmvc+mybatis+mysql+log4jdbc+excel 实现sql日志输出和excel导出
2017-05-09
权限管理系统
2013-03-23
航空订票系统(jsp+java+sqlserver+spring+servlet+strut)
2011-07-12
新闻发布系统(jsp+ajax+oracle+java+javascript)
2011-07-10
物流信息网(jsp+sqlserver+servlet+strut)
2011-07-09
企业电子商城系统(jsp+servlet +strut+sqlserver)
2011-07-09
购物系统(shopping)用到的技术有(jsp+servlet+java+sqlerver+strut)
2011-07-09
网上书店系统(java+sqlserver+jsp+servlet+strut+spring)
2011-07-09
火车站售票系统.(java+oracle+jsp+javascript)
2011-07-09
接口的详解,是你很容易学习接口
2011-03-08
interface使用
2011-02-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人