- 博客(37)
- 收藏
- 关注
原创 基于Spring+Vue开发的你画我猜源码分享
本项目是一款基于Web的实时互动绘画游戏平台,采用前后端分离架构开发。通过Spring Boot构建高性能后端服务,结合Vue3实现响应式前端界面,使用Socket.IO实现实时通信。支持多房间游戏、实时画板同步、聊天互动、等功能。在线体验——公共房间房间名为Test的自定义房间——只需加上参数roomName,后面是房间名称,支持多房间游玩、以及移动端,PC端共同游玩。
2025-04-24 10:03:43
292
原创 spring中使用netty-socketio部署到服务器(SSL、nginx转发)
本文实现前端socket.io-client连接后端netty-socketio,并且部署到服务器上的示例,以及说明一些实现过程中可能遇到的错误。socketio默认基于的路径是/socket.io传输方式有三种分别是:polling、websocket、webtransport、坑①<sessionId> is not registered. Closing connection`,坑②polling模式,传了请求头,那么后端必须在配置中允许该请求头,坑③默认命名空间必须使用`socketIOServer
2025-04-22 17:57:53
805
原创 轻AI——轻轻松松打造自己的AI平台(AI项目源码分享vue+nestjs)
你想快速打造自己的AI平台吗?试试这套代码吧,只需简单几步即可完成。轻AI——轻轻松松使用AI一套基于Vue3 + Nestjs搭建的AI工具平台。演示地址,项目功能概括1、一对一AI聊天其中Deepseek、通义千问具备思考模型(更多模型接入中)其中通义千问、豆包、kimi接入多模态模型(更多模型接入中)所有回答均可语音朗读2、集成式AI聊天跨模型协作舱:无限AI自由组队,思维碰撞无界限!3、🛠️在线编译器(▶支持Java、Python、CPP,更多语言)
2025-03-20 16:12:53
1052
原创 基于nestjs框架,使用dockerode运行代码,打造在线代码编译平台!
基于 nestjs 框架与 dockerode 打造在线编译平台,实现代码在线运行。dockerode 由 docker + ode 组成,是 Node.js 的 Docker 远程 API 模块。成果可见轻 AI | 一站式 AI 对话与在线编程平台。思路是用 dockerode 创建容器运行代码,不同代码类型对应不同镜像,如 Python 用 python 镜像、Java 用 openjdk 镜像。以运行 Python 代码为例,先检查 python 镜像是否存在,不存在则构建............
2025-03-03 11:47:16
628
原创 日历热力图,月度数据可视化图表(日活跃图、格子图)vue组件
一种基于Vue的日历热力图月度数据可视化组件。该组件展示近一年时间数据,起始时间为上一年的当天,在PC端和移动端均有良好的适配性。它使用ElementPlus和Moment实现,颜色支持自定义,根据数据大小确定颜色深度。在代码实现方面,通过计算获取每个月的剩余天数、起始周几等信息,随机生成365个数据并为每个日期赋予浏览次数和对应颜色。使用时传入size参数设置方格尺寸,也可自行修改样式。此组件为数据可视化提供了一种直观且灵活的呈现方式。
2025-01-20 14:42:38
1418
2
原创 Sa-token SSO单点登录前后端分离基于vue的实现
实现sa-token sso单点登录前后端分离,前端采用vue框架,结合官方文档的方案代码,并且补全了官方未在server端拆分页面的实现,来看看具体实现吧。用户在satoken-server1点击登录,vue路由跳转到/sso-login带着back参数,进入到sso-login组件后调用goSsoAuthUrl方法,获取后端配置的授权登录地址,紧接着跳转到前端路由/login,带着redirect参数,在/login界面中点击登录按钮,调用接口/sso/doLogin发起登录,登陆成功刷新页面.....
2025-01-17 13:03:28
1898
1
原创 vue3横向滚动日期选择器组件(Element Plus)
基于vue3实现的横向滚动日期选择器,此组件有丰富的视觉动画,且功能已经封装至一个组件中,使用简单。提示:组件使用到了element-plus组件库和dayjs库,使用前先保证项目中已经下载导入主要功能:选择日期,点击日期可以让此日期滚动到视图中间,左滑右滑同理,支持跳转至任意日期,支持自定义滚动日期的数量组件代码使用方式传入count 30,组件初始化横向滚动日期数为30个,初始化数量不要太少,最好占满宽度,让其可以滚动。
2024-12-19 11:39:01
1278
原创 vue字母划分选择城市组件(国内国际)
这是一个基于vue的城市选择组件,有国内国际城市,依据传入元素进行相对定位,简单易用。城市按照首字母划分,归入以下几个类当中ABCDEF、GHIJ、KLMN、PQRSTUVW、XYZ。组件有用到了和充当滑块,所以项目中要有element-plus才能够使用使用方式父组件控制是否显示,el传入HTML元素,此选择器会在el下面打开。
2024-12-16 14:48:30
1268
原创 ScreenshotToCode + Ollama,屏幕生成网页
能够将屏幕截图转换为代码Ollama一个开源的大模型平台github地址只需一张图即可生成最新的版本已经支持本地Ollama部署的AI了,不强制使用chatgpt,但是亲测还是chatgpt效果好一些。本文演示使用本地AI模型。
2024-11-19 17:54:24
1597
原创 java实现代码沙盒(docker-java)
代码沙盒是一种提供安全、隔离环境来运行代码的工具,本篇实现采用docker-java。具体思路就是基于特定的镜像将代码包成一个容器,其次就是用docker运行这个容器,运行期间可以获取代码运行的时间、消耗的内存、使用cpu的情况、运行的结果等等信息。首先引入依赖,要想使用docker-java,必须选择一个`transport`,`httpclient`就是其中之一。
2024-11-15 16:21:13
623
原创 spring cloud整合rocketmq遇到的错误
定义spring cloud项目根目录的pom.xml时,通常会进行版本规范如,但是在启动项目是会报错:Action:Correct the classpath of your application so that it contains compatible versions of the classes org.apache.rocketmq.spring.support.DefaultRocketMQListenerContainer and org.apache.rocketmq.client
2024-11-05 16:35:30
711
1
原创 Java使用ZipOutputStream压缩文件、文件夹,输出下载到本地
两种方式,1、使用Spring,文件在线URL输出到请求响应response,提供下载。2、使用本地文件夹,压缩成zip输出到相应目录,第一种传ZipEntry类,相当于在压缩包中放了一个文件,文件内容为空ZipEntry有一个构造器,可以实现以路径的形式生成文件夹,例如`new ZipEntry("a/b/c.jpg")`,最终生成的压缩包中包含a文件夹,a文件夹内部包含b,b文件夹内部包含c.jpg,利用这个性质,就可以写一个递归,检索文件夹,如果检索过程中又发现文件夹,则继续递归.........
2024-11-01 13:58:21
1167
原创 springboot实现微信公众号扫码登录
首先后端可以给前端发送绑定唯一code的二维码了,并且绑定了扫码处理器,用户扫码会调用到扫码处理器的内容,处理器内会判断用户是否之前扫描过,若扫描过根据openid查询用户数据,直接异步发送登陆成功的事件,正常登录。方法利用redis生成一个唯一的自增的编码,后端给前端发送二维码时,会绑定一个这个code,根据这个唯一code来判断是哪一个channel扫的码,这样知道了是哪个channel才可以向前端发送对应的通知。5、后端接收到扫码事件,向MQ发送用户扫码成功,MQ异步通知前端扫码成功等待授权。
2024-10-15 15:52:26
800
原创 服务器中使用wss协议连接websocket(基于netty)
前置条件:可用的SSL证书,需要两个文件,key格式的还有pem格式的,如果是阿里云证书,下面Nginx类型的就可以。常见错误有io.netty.handler.ssl.NotSslRecordException: not an SSL/TLS record,错误说明没有使用SSL/TLS,还有wss Received fatal alert: certificate_unknown错误说明证书未知。
2024-10-14 13:28:10
1268
原创 在虚拟机使用docker compose部署rocketmq、rocketmq dashboard
配置brokerIP1为了本地Java应用可以通过此IP访问到,不配置的话默认是172.xxx.xxx.xxx,配置brokerIP1为了本地Java应用可以通过此IP访问到,不配置的话默认是172.xxx.xxx.xxx,在java应用中会出现sendDefaultImpl call timeout连接超时的异常。访问http://192.168.141.130:9999。接下来编写docker-compose.yml。broker.conf内容如下。虚拟机上有docker环境。
2024-09-18 11:47:58
644
1
原创 spring data jpa使用@Meta打印有注释的sql
@Meta是spring data jpa在3.0版本新加的注解,可以帮助开发人员快速理解sql含义,适合长sql、长时间不看忘记含义的sql。接下来开启sql注解(打印sql必须一并开开)使用方式@Meta(comment=“”)配置完毕,执行sql会打印出来你写的注解。如果你用properties。如果你使用的是xml。
2024-09-09 14:41:19
345
原创 【网站模板】vue企业项目官网(企业门户网站)、网站二改、省时省力!
vue企业门户网站模板,本项目共有代码10000+行,适配移动端和PC端,可作为官网或其他二次修改使用。提供在线浏览地址, 点击前往在线浏览。2024.9.8经测可以下载依赖并且运行。项目完结时间为2022年8月。
2024-09-08 21:09:54
5903
25
原创 【毕业设计】基于Spring Cloud微服务架构的AI生成式网站的设计与实现
【毕业设计】基于Spring Cloud微服务架构的AI生成式文章——摘 要近年来,随着人工智能应用场景的不断增加,对人们的生活方式产生了巨大的影响。如ChatGPT、WebTab、Gemini等大模型的出现,加速了检索信息、创作信息的速度。这些新起之秀,带动着整体AI行业的发展,使得AI行业进步迅速,信息量笼罩着如今的各行各业。为了减轻创作者日常创作新内容的工作量,提升创作者的工作效率,因此开发了AI生成式网站管理系统。
2024-09-05 21:56:56
1556
原创 微信小程序使用Websocket记录(wss协议、Spring Gateway)
如果在微信小程序中使用wx://localhost会在真机调试中出现错误,就算不校验合法域名也不行。nacos的服务发现和gateway的信任下游全部证书都开启。必须带lb,需要websocket的就写这个lb:ws://根据提示填写,之后挪到gateway的resouce中。这里使用的是Spring Gateway配置SSL。本地中,WSS成功连接上了,但是真机模拟又出大病了。难道真的只能放服务器上跑吗?有点繁琐,本地调试也要开启SSL才行。如果gateway指定证书的话。
2024-08-06 13:48:53
589
原创 Taro安装tailwindcss的异常报错
按照官方流程一步一步操作下来,会报错。如果你选的是Vite会出现下面报错taro Error: Cannot find module 'webpack',然后继续运行,依然报错UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch blockModuleBuildError: Module build failed
2024-07-30 17:07:03
1609
原创 实现bilibili哔哩哔哩banner多图片基于鼠标移动(vue)
部署了一个DEMO,先来看看效果。大致思路:①鼠标移入记录一个X偏移,赋值给enterX变量②鼠标移动计算当前鼠标x位置和enterX的差值③根据算出来的差值偏移图片④设计一个偏移阈值,让多张图片移动产生视觉偏差,同时管理好图层顺序。图片资源可以F12—网络—图片里抓取下载。2024-07-29 banner图定义好格式,背景和装饰元素分开,因为背景偏移少一些为什么要分背景元素和装饰元素看下面这个图,背景元素比视图层大一些,因为这是要左右滑动的,而装饰元素则没有这个限制,怎么移动都可以。
2024-07-29 17:02:31
323
原创 Kafka stream最全方法及用法说明(附带案例)
Kafka Stream是一个用于构建应用程序和微服务的客户端库,其中输入和输出数据存储在Kafka集群中。它结合了在客户端编写和部署标准Java和Scala应用程序的简单性,以及Kafka服务器端集群技术的优势。DSL (Domain Specific Language) 领域特定语言它是建立在流处理器API之上的。推荐大多数用户使用,尤其是初学者。大多数数据处理操作可以只用几行DSL代码表示。filter较为特殊,可以用来做死信队列
2024-07-26 13:20:54
958
原创 使用Kafka实现带消息记录的实时传输对话场景(聊天室)
使用**Websocket**可以实现客户端的双向通信,客户端可以向服务端发送数据,服务端也可以向客户端发送数据。传输内容是可以实时传输了,但是如果没有存储功能,一刷新页面(或者重新进入)就再也看不到之前发送的消息,这是一个很大的麻烦。策略一数据持久化首先想到在传输的时候,顺带将数据存入数据库,貌似这样也是一种可行的方案,但后果是每一次传输都要和数据库进行一次IO,性能低下,甚至有时候可能出现存入失败的情况,导致数据丢失。策略二消息队列是否能将消息持久化进消息队列
2024-07-23 16:44:14
1757
原创 Kafka命令行笔记(持续更新)
2、列出所有主题(topic)的全部消费者组(consumer group)–members --verbose 在上面的基础上多了成员的分区。–members 该选项提供消费者组中所有活动成员的列表。–to-earliest 将偏移量重置为最早的偏移量。9、开一个Consumer消费Topic里面的消息。–to-current 将偏移量重置为当前偏移量。–to-offset 将偏移量重置为特定的偏移量。–to-latest 将偏移量重置为最新偏移量。3、检查描述消费者组的信息。5、重置消费者分组的偏移。
2024-07-23 15:40:11
468
原创 html制作拼图小游戏(react制作)
规则:在一个(3 * 3)的大正方上被分成个8个(1 * 1)小正方形,剩下的一个是空的,每个小正方形可以移动到空的位置上,若旁边没有空的位置,则无法移动。点击对应的小正方形,若小正方形四周有空白处,会向空白处移动。正方形恢复1,2,3,4,5,6,7,8的顺序为过关。本文css使用tailwindcss。代码中详细分析了实现过程。
2024-07-16 11:38:34
328
原创 Xterm + Jsch + Websocket + Spring Boot打造网页终端(SSH)
Xterm + Jsch + Websocket + Spring Boot打造网页终端(SSH)Xterm 官方文档Jsch 官方文档对于Websocket不熟悉的可以先看一下这篇文章👉👇最终实现的效果如下图所示👇。开启一个连接此处`WebSocketServer`用到文章一开始提到的建立Websocket的java类,这里假设用户ID为1的连接,始终给ID为1的用户响应,作为此DEMO演示。连接成功之后响应其他的Linux命令。关闭响应的方法,此处使用的WebSocketServer.java
2024-06-27 13:59:38
977
原创 spring中利用websocket打造最简易的双向通讯
最简易的双向通讯、聊天室。首先创建Message.java,利用lombok快速生成构造方法,以及get,set方法。① @ServerEndpoint标注对应websocket的链接地址,如以下前端通过。假设参数为1的要给参数为2的发送实时消息,输入发送内容,发送目标填2。首先引入pom,该pom根据spring-boot的版本自动选择。路由自己配置,主要为了获取路由上的参数,界面如下。到此,最简易版本的双向通讯搭建完成。
2024-06-26 09:57:33
357
原创 在Ubantu24.04上安装kubenates(k8s) 1.30
在服务器上部署K8S,包成功,遇到的错误可能有dial tcp 127.0.0.1:8080: connect: connection refusednetwork plugin is not ready: cni config uninitialized首先 更新 `apt` 包索引并安装使用 Kubernetes `apt` 仓库所需要的包,下载用于 Kubernetes 软件包仓库的公共签名密钥。所有仓库都使用相同的签名密钥,因此你可以忽略URL中的版本:
2024-06-05 15:06:34
1640
7
原创 Amazon S3的分段上传,大文件上传,上传进度条,列出分段上传,中止分段上传,重启续传功能实现
我们在上传大文件的时候往往需要采用分片的方式,Amazon虽然提供了这种方式,但是不能实现我们后端在(宕机/重启)之后导致的文件丢失,大文件上传到一半可能会丢失数据的问题。本文将利用本地线程池加数据库记录的方式,实现后端(宕机/重启)后恢复之前正在上传的文件,顺便利用SSE(Server Send Event)实现(宕机/重启)后进度条的还原。首先引入maven,我用的是下面这个,目前最新版本1.12.731。
2024-05-30 15:15:03
3139
4
原创 ant-design-vue@4使用unplugin-vue-components导入的坑
ant-design-vue@4使用unplugin-vue-components导入的坑控制台会报错[vite] Internal server error: Failed to resolve import "ant-design-vue/es/button/style/css" from "src/components/home.vue". Does the file exist?说明也比较明显,告诉我们没有css文件,因为antd vue的4版本弃用了原先的less方案,采用CSS-in-JS
2024-05-25 15:11:02
1355
原创 rabbitmq-dashboard资源下载
如果使用rabbitmq-dashboard源码编译打包成jar包可能会出现下载失败,或者连接超时的问题,需要配置maven代理。打开你的maven config setting.xml。``此处的端口需要根据需要手动改写``
2024-02-17 11:25:35
633
1
原创 RedisTemplate中BitFieldSubCommands的使用方法
spring-boot-starter-data-redis早就考虑到了这一点,所以为我们提供了一种。下面是最常规的做法,循环获取redis key中的偏移值,但是这种写法看着确实不太优雅....功能时,往往会遇到一个问题,我想要获取用户这个月打卡记录需要怎么做呢?需要创建一条一条的BitFieldSubCommand才有效。我们需要使用BitFieldSubCommands。需要注意,以下写法无效。
2023-07-18 20:30:13
1409
1
原创 判断字符串数字能否被任意整数m整除
从字符串首尾开始依次遍历到末尾,判断substring(0,i)是否能被m整除,能整除设置mod为0,不能整除mod就不断累乘,得到字符串片段数。②、mod连接word.charAt(i) ,此时mod = 13,可以被m整除,mod归0,s.substring(0,i+1)可以被m整除。①、1 % 13!= 0 所以mod = 1,因为mod不为0所以s.substring(0,i+1)不能被m整除。③、ans[n-1]为1即代表word可以被m整除。
2023-02-26 13:41:57
307
你画我猜源码(Spring+Vue)
2025-04-24
rocketmq-dashboard-2.0.1-SNAPSHOT.jar
2024-12-10
毕业设计基于Spring Cloud微服务架构的AI生成式网站的设计与实现
2024-09-08
网站模板源代码(组件划分规范,二改省力)
2024-09-08
毕业设计基于Spring Cloud微服务架构的AI生成式网站的设计与实现
2024-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人