- 博客(26)
- 资源 (6)
- 收藏
- 关注
原创 基于RabbitMQ的消息提醒系统设计与实现(spring boot + vue2案例)
本文介绍了基于RabbitMQ实现的消息提醒系统设计方案,采用Spring Boot+Vue2技术栈。系统包含三种消息类型:系统通知、站内信和实时弹窗提醒。架构上使用RabbitMQ进行消息路由,通过FanoutExchange实现广播消息,TopicExchange处理定向用户消息。后端实现了RabbitMQ配置、消息模型定义和生产者逻辑,支持消息持久化和动态队列创建。前端通过WebSocket实现实时推送,确保用户及时获取通知。系统具备消息存储、状态跟踪和自动清理机制,适用于各类业务场景的提醒需求。
2025-11-17 11:21:01
1135
原创 spring boot框架中本地缓存@Cacheable原理与踩坑点详细解析
Spring Boot本地缓存使用存在对象引用共享风险,当修改@Cacheable返回的缓存对象时,会直接污染缓存数据。本文详细分析了这一风险机制,通过测试验证了修改缓存对象属性的危险性,并提出了两种解决方案:1)防御性拷贝(手动深拷贝或序列化深拷贝),确保返回缓存副本而非引用;2)采用不可变对象模式,通过设计不可变DTO从根本上防止缓存污染。这些最佳实践能有效避免因对象引用导致的缓存数据意外修改问题。
2025-10-16 09:49:26
889
原创 ShardingSphere 分库分表技术实现与实战案例
本文介绍了使用Apache ShardingSphere实现分库分表的技术方案。针对电商平台订单、用户等海量数据表,设计了按用户ID哈希分库、按时间分表的分片策略,确保数据均匀分布和高效查询。文章详细讲解了ShardingSphere的核心原理(分片路由、SQL改写等)和实战步骤,包括环境准备、依赖配置、分片规则定义等。重点展示了订单表的分库分表配置示例,采用Snowflake算法生成分布式ID,并通过YAML文件定义多数据源和分片规则。
2025-09-11 16:01:51
1169
原创 基于MQTT的实时消息推送系统设计与实现(Java后端+Vue前端)
本文档将详细介绍如何使用MQTT协议实现一个具备实时推送、消息优先级、消息撤回、重试机制和连接稳定性保障的完整消息系统。我们将以社交应用的实时通知场景为例,提供完整的Java后端和Vue前端实现方案。我们实现一个社交应用的实时通知系统,支持:1.3 技术选型MQTT Broker: EMQX 5.0(支持MQTT 5.0,高并发)后端: Spring Boot 2.7.x + Eclipse Paho MQTT客户端前端: Vue 3 + MQTT.js + Element Plus数据库: M
2025-09-10 16:53:22
1233
原创 MyCat安装和配置教程&基于MyCat 中间件实现mysql集群读写分离与从库负载均衡教程(详细案例教程)
摘要:本文详细介绍了基于MyCat 2.0中间件实现MySQL主从集群读写分离的完整方案。通过搭建一主两从的MySQL 8.0集群环境,配置MyCat中间件实现写操作自动路由到主库,读操作负载均衡到从库。文章包含MyCat部署步骤、核心配置文件(datasources.xml、schema.xml、user.xml)的详细参数说明,以及Spring Boot应用的连接配置。该方案适合中大型系统,能有效提升数据库性能和扩展性。
2025-09-09 15:40:06
1463
原创 基于mybatis-plus动态数据源实现mysql集群读写分离和从库负载均衡教程(详细案例)
本文介绍基于Spring Boot 2.7.x、MyBatis-Plus 3.5.x和MySQL 8.0实现数据库读写分离及从库负载均衡的详细方案。通过dynamic-datasource插件配置主从数据源,主库处理写请求,从库通过轮询策略负载均衡读请求。包含完整的Maven依赖配置、application.yml多数据源设置(支持健康检测和故障剔除)、以及MyBatis-Plus集成说明。本方案适合中小型项目快速落地,能有效提升数据库性能和可用性。案例提供从环境准备到代码实现的全流程指导,包括主从集群配置
2025-09-09 15:30:48
993
原创 Linux之centos 系统常用命令详解(附实战案例)
本文针对 CentOS 7/8 系统,整理了运维工作中高频使用的命令,涵盖系统信息、文件操作、用户权限、软件管理、服务控制、网络配置等核心场景,并结合实战案例说明具体用法,适合运维人员日常查阅与新手学习。
2025-09-03 15:27:23
924
原创 Ubuntu系统常用命令介绍
摘要: 本文档为Ubuntu Server(20.04/22.04/24.04 LTS)运维人员提供常用命令速查,涵盖系统管理、文件操作、网络配置、服务监控等核心场景。内容包括: 用户与权限管理:用户创建/删除、权限修改(chmod/chown)、sudo配置; 系统状态监控:资源查看(top/htop)、磁盘/内存检查(df/free); 软件管理:APT包操作(update/upgrade)、内核维护; 文件操作:目录导航(cd/ls)、编辑(vim/nano)、搜索(grep/find); 网络配置:
2025-09-02 15:49:05
1035
原创 Ubuntu 24.04 服务器配置MySQL 8.0.42 三节点集群(一主两从架构)安装部署配置教程
本文档适用于在 **Ubuntu 24.04 LTS 服务器** 环境下,部署 **MySQL 8.0.42 一主两从复制集群**,满足中小规模业务的高可用、读写分离需求(如电商订单系统、内容管理平台等),从节点可分担读请求,提升整体系统并发能力。
2025-09-02 15:39:06
1029
原创 Ubuntu 24.04.2 LTS 安装mysql8.0.36保姆级教程(从安装到远程连接)
MySQL 是最流行的开源关系型数据库之一,本文将详细介绍在 Ubuntu 24.04.2 LTS 系统上安装 MySQL 8.0.36 的完整过程,包括基础安装、安全配置和远程连接设置。
2025-08-01 16:44:27
1460
原创 基于nacos和gateway搭建微服务管理平台详细教程
如果cmd命令行输入以下命令查看到有相应输出则表示环境已安装Spring Initializr 是一个在线工具,可帮助你快速生成 Spring Boot 项目的基本结构打开浏览器,访问 https://start.spring.io/。在该页面上,按照以下要求进行配置:更新Maven依赖步骤 5:创建控制器类为了方便管理,一般会将每个分支进行文件汇总,如下添加Controller控制层文件夹,所有的控制层文件都放在此文件夹内步骤 6:运行idea,启动项目启动完成后浏
2025-06-16 16:39:37
1334
原创 服务端高并发分布式架构演进路程
本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。
2025-04-07 09:03:41
1037
原创 centos7系统安装minio教程&spring boot集成minio
项目中多地方有“头像上传”、“附件上传”、“图片上传”、“根据url直接预览文件”等需求,虽然手写文件上传、下载等功能可以实现,但是后期文件管理,功能扩展起来会相当麻烦,因此准备引入开源且功能完善强大的文件存储服务系统minio。
2024-12-09 15:36:20
1371
原创 linux centos7.9升级openssh9.8过程
因漏洞扫描扫描出openssh相关的高危漏洞,处理新发布的CVE-2024-6387关于openssh的漏洞,需要升级openssh到9.8版本。
2024-07-31 16:23:05
8637
5
原创 Linux系统搭建ElasticSearch集群详细教程
ElasticSearch简称es(下文均称为es),是一款由java语言开发的强大且灵活的搜索和分析引擎,本文记录基于es7.17版本的es集群搭建及配置详细步骤。
2024-02-25 14:42:21
6124
6
原创 ElasticSearch之kibana5.4版本安装及配置教程&kibana修改语言为中文教程
最近项目在使用es时,使用elastic-head来查看数据对客户来说并不友好,因此需要安装kibana(es的数据可视化工具)。过程中遇到很多问题,网上记录的也比较少,特此记录下。由于项目使用的es版本比较低5.4.*,因此本文安装kibana是基于kibana 5.4.1版本。
2024-01-17 17:08:22
2630
原创 The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]
最近在Linux部署spring-boot+sql server项目时,报了有关数据库连接的错误;翻译过来大致意思就是:“数据库服务端的协议版本是TLS10,而客户端协议版本是TLS12”,在此记录解决过程,希望能给大家提供帮助
2023-11-13 17:49:19
2996
原创 java基于POI根据word模板生成word文档并下载
前言:项目中通常会需要导出合同,导出周报等需求等。本文是基于poi技术,实现通过填充word模板生成word文件并支持下载。word模板数据填充是采用的占位符方式,其中数据采用key-value接口,推荐采用HashMap。
2023-11-13 11:21:27
2793
原创 java获取中文拼音,java实现根据汉字获取拼音
1、导入依赖<dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>2.5.1</version></dependency>2、获取中文的拼音工具类实现public class PinYinUtil { /** * This meth
2020-11-02 11:14:14
1741
1
原创 Linux系统安装mysql数据库,配置初始密码
1//执行以下命令更新软件库sudo apt-get update2//安装mysqlsudo apt-get install mysql-serversudo apt-get install mysql-clientsudo apt-get install libmysqlclient-dev3//安装完并没有让我设置用户名或者密码的步骤,它会生成默认的用户名和密码,可以查看/etc/mysql/debian.cnf文件,所以有需要的话需要设置自己的用户名和密码4//用上...
2020-10-19 14:26:17
1417
原创 java文件上传-基于spring MVC框架的单文件、多文件上传,基于MultipaFile接口的文件上传实现
Spring MVC框架的文件上传是基于commons-fileupload组件的文件上传,只不过Spring MVC框架在原有文件上传组件上做了进一步封装。一、MultipartFile接口在Spring MVC框架中上传文件时将文件相关信息及操作封装到MultipartFile对象中,因此开发者只需要使用MultipartFile类声明模型类的一个属性即可对被上传文件进行操作,该接口方法有如下:* byte[] getBytes():以字节数据的形式返回文件的内容;*String get
2020-10-16 16:41:17
2243
原创 Java 基于POI实现根据 Excel模板填充数据并导出Excel
【本案例基于spring boot架构】一、需求介绍 给定一个Excel模板,在指定位置插入数据,然后将生成的excel导出。二、实现方法介绍 1、准备Excel模板 模板中要插入数据的地方用“${...}"代替(其实就是占位符,与mybatis的sql语法占位符一样),2、代码实现(可移植)本案例用到的jar包依赖如下:<de...
2020-04-29 15:56:01
5786
13
原创 Java 基于freemarker实现Word模板导出并下载
import freemarker.template.Configuration;import freemarker.template.Template;import freemarker.template.TemplateException;import javax.servlet.http.HttpServletResponse;import java.io.*;import ja...
2020-04-23 15:47:06
913
【操作系统课程设计】基于Java的程序片段前趋图生成与绘制系统:实现程序依赖关系可视化旨在通过Java语言
2018-06-05
Wwise 开发文档.pdf
2019-07-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅