自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 若依 前后端分离版 升级到SpringBoot3 教程

【代码】若依 前后端分离版 升级到SpringBoot3 教程。

2025-08-20 21:03:24 211

原创 【SpringBoot】三大统一功能处理:拦截器、数据返回、异常捕获详解

各位开发者朋友,大家好!在构建健壮、易维护的SpringBoot后端服务时,我们常常会面临一些重复性、横切关注点的功能需求:**请求拦截与预处理:**如何高效地进行登录验证、权限检查、日志记录、参数预处理等,避免在每个Controller方法中重复编写相同的校验逻辑?**响应数据规范化:**如何确保API返回给前端的数据格式(状态码、消息、业务数据)始终保持统一、清晰的结构?避免前端需要针对每个接口做特殊解析。

2025-08-18 22:11:34 727

原创 MySQL 数据操作全流程:创建、读取、更新与删除实战

本篇将介绍表的增删查改(CURD),在数据库技术与项目开发中,CURD 是对应 Create(创建)、Update(更新)、Read(读取)、Delete(删除)四类数据处理动作的核心操作缩写,也是贯穿各类项目开发全流程的基础数据交互原子操作。本篇内容紧跟上篇,前半部分的操作比较基础,之前的文章中你已经见过了。

2025-08-17 22:03:18 655

原创 基于Ruoyi和PostgreSQL的统一POI分类后台管理实战

在之前的系列内容,我们已经实现了百度和高德两个平台的POI分类的数据库设计与实现,同时也分别针对性的介绍了如何批量的自动构建百度和高德两个平台的POI分类信息管理。博文地址如下表所示:博文序号博文地址1基于PostgreSQL的百度或高德等POI多层级分类的数据库设计2基于ApachePOI实现高德POI分类快速导入PostgreSQL数据库实战3基于ApachePOI实现百度POI分类快速导入PostgreSQL数据库实战。

2025-08-13 10:58:20 369

原创 【SpringBoot实战系列】SpringBoot3.X 整合 MinIO 存储原生方案

在分布式存储领域,MinIO作为一款高性能的对象存储服务,凭借兼容S3 API、轻量级部署、支持分布式集群等特性,成为企业级文件存储的热门选择。尤其在SpringBoot生态中,通过原生SDK整合MinIO可以快速实现文件的上传、下载、删除等功能,适用于云存储、大数据场景、内容管理系统等多种业务场景。本文将基于SpringBoot3.X版本,从零开始构建MinIO文件存储方案,涵盖环境准备、依赖配置、核心功能开发、进阶特性及问题排查,帮助开发者快速掌握原生整合方案。

2025-08-11 22:46:21 233

原创 【gateway nc adapter虚拟网卡 win11 联想】问题的解决

由于需要登录公司内网,于是启用奇安信VPN。但启动后报出网关未连接的问题,于是我检查了我的网络适配器,并尝试解决,以下给出几种我实践过程中的行动,并附带最后成功的解决方法。

2025-08-09 09:18:55 832

原创 数据分析师必看!20个高频SQL面试题+答案解析

涵盖基础操作、进阶函数和实战场景,特别加入窗口函数等近年热门考点,助您快速掌握通关秘籍!查询订单表中2023年交易金额大于5000元的订单ID和用户ID,按金额降序排列。统计用户表中不同年龄段的用户数(分段规则:<20岁、20-30岁、>30岁)。计算每个部门的平均薪资,并筛选出平均薪资高于公司整体平均薪资的部门。查询购买了"会员服务"但未购买"增值包"的用户名单。查询订单表第21-30条记录(假设每页10条)。验证用户表和订单表的user_id是否完全匹配。查询最近30天内活跃但未下单的用户ID。

2025-08-07 20:48:20 242

原创 spring全面详解-最全最详细的spring基本认识和入门使用

Spring是一款主流的Java EE 轻量级开源框架,目的是用于简化Java企业级引用的开发难度和开发周期。从简单性、可测试性和松耦合度的角度而言,任何Java应用都可以从Spring中受益。Spring框架提供自己提供功能外,还提供整合其他技术和框架的能力。Spring自诞生以来备受青睐,一直被广大开发人员作为Java企业级应用程序开发的首选。时至今日,Spring俨然成为了Java EE的代名词,成为了构建Java EE 应用的事实标准。

2025-08-05 23:32:43 1509

原创 完整 Spring Boot + Vue 登录系统

模块功能后端Spring Boot + MyBatis Plus + JWT + Shiro数据库MySQL 用户表前端Vue3 + Element Plus + Axios登录流程用户名/密码验证 → 返回 Token → 存储 LocalStorage权限控制拦截器校验 Token + Shiro 角色权限跨域配置后端支持跨域请求接口安全所有接口需携带 Token 访问?? 数据库脚本(MySQL)?? 后端代码(Spring Boot)1. 2. JWT 工具类 3. 登录接口

2025-07-30 23:07:56 287

原创 基于SpringBoot和Leaflet集成在线天气服务的区县当前天气WebGIS实战

在当今数字化时代,地理信息系统(WebGIS)作为一种强大的空间信息展示与分析工具,已经广泛应用于各个领域。它不仅能够直观地呈现地理数据,还能结合实时信息为用户提供更加丰富和动态的体验。天气信息作为与人们日常生活息息相关的重要数据,其与WebGIS的结合更是具有巨大的应用价值。本文将深入探讨如何基于SpringBoot框架和Leaflet库,集成在线天气服务,构建一个展示区县当前天气的WebGIS系统,旨在通过实战案例为相关开发者提供参考和借鉴。

2025-07-29 21:21:15 929 1

原创 【基础】Node.js 介绍、安装及npm 和 npx功能了解

后面安装n8n要用到,做一点技术储备。主要是它的两个工具:npm 和 npx。Node.jsNode.js是一个免费的、开源的、跨平台的 JavaScript 运行时环境,允许开发人员在浏览器之外编写命令行工具和服务器端脚本,是一个基于Chrome V8 引擎的JavaScript 运行时环境,让 JavaScript 可以脱离浏览器运行在服务器端,用于构建高性能、可扩展的网络应用(如 Web 服务器、API、微服务等)。Node.js 相关核心工具及作用工具/概念作用npm(Node 包管理器)

2025-07-28 21:11:16 858

原创 【Spring】AOP

*AOP(Aspect-Oriented Programming,面向切面编程)**是一种编程范式,它通过预定义的切面(Aspect)对程序进行动态扩展,从而减少代码重复并提升可维护性。AOP的核心思想是把关注点从核心业务逻辑中分离出来,并通过切面(Aspect)将其实现。举个例子,在一个电商应用中,我们可能会在多个业务逻辑中用到日志记录、安全验证或事务管理等功能。传统的方式是将这些功能硬编码到各个业务模块中,这样会导致代码的重复和混乱。

2025-07-22 19:03:32 778

原创 《On Java进阶卷》阅读笔记(二)

向Set中添加的每个元素都必须是唯一的,Set不会添加重复的元素。基于哈希表实现,使用这个类代替旧的HashTable,提供了常数时间的键值对插入和定位性能。注解是一个很受欢迎的Java新特性,它是一种结构化且接受类型检查的向代码中添加元数据的方法,并且不会导致代码被渲染得混乱和不可读。使用到Java的反射机制,class对象中的getAnnotation方法可以获取这个class上被使用的注解。注解通常包含一些可以设定值的元素,元素看起来比较像接口的方法,只不过可以指定默认值,非null的。

2025-07-21 20:34:24 768

原创 基于SpringBoot的宠物领养系统设计与实现

传统的宠物领养过程往往繁琐且信息不对称。为了解决这些问题,我们设计并实现了一个基于Spring Boot框架的宠物领养系统。该系统旨在为宠物领养提供一个高效、安全和便捷的平台,连接宠物与领养者,帮助宠物找到属于它们的新家。本系统通过使用Spring Boot与Vue.js技术栈,成功实现了一个功能完备的宠物领养平台。系统提供了管理员、用户的功能模块,分别支持宠物管理、用户管理、领养申请、宠物论坛等。核心优势:高效的宠物管理:管理员可以灵活地管理宠物信息和领养记录,确保平台信息更新及时。前后端分离架构。

2025-07-18 20:35:10 690

原创 使用 Nginx 搭建代理服务器(正向代理 HTTPS 网站)指南

本文介绍了如何使用 Nginx 搭建正向代理服务器,支持 HTTP 和 HTTPS 网站代理,并提供了详细的代码和配置示例。通过本文的学习,您可以掌握搭建正向代理的基础知识,并能在实际项目中应用。代理服务器是一种非常强大的工具,能够帮助我们隐藏客户端信息、绕过 IP 限制等。合理的配置和优化可以提升代理服务器的性能,从而满足实际应用中的需求。

2025-07-15 20:53:24 642

原创 SpringBoot 整合 MyBatis-Plus

*MyBatis-Plus(简称 MP)**是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。愿景我们的愿景是成为 MyBatis 最好的搭档,就像魂斗罗中的 1P、2P,基友搭配,效率翻倍。Wrapper : 条件构造抽象类,最顶端父类AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件QueryWrapper : 查询条件封装UpdateWrapper : Update 条件封装。

2025-07-14 20:21:18 546 1

原创 字符函数和字符串函数(下)- 暴力匹配算法

以上就是这部分内容的全部了,有时候不得不说,永远保持谦逊,小编一直觉得自己C语言其实学的还可以,很扎实,但是越学到后面越是感觉,路还很远。

2025-07-12 21:53:02 473

原创 Spring Boot 中的 @ConditionalOnBean 注解详解

在 Spring Boot 中,条件注解(Conditional 注解)是一种强大的功能,允许我们根据某些条件动态地注册或跳过特定的 Bean。其中,当 Spring 容器中存在指定的 Bean 时,当前 Bean 才会被注册。本篇文章将详细介绍的使用场景、原理,并提供多个示例帮助理解。指定 Bean 类型指定 Bean 名称指定 Bean 注解搜索范围你在项目中用过吗?欢迎留言分享你的经验!??

2025-07-10 21:29:56 613

原创 【MySQL基础】MySQL复合查询全面解析:从基础到高级应用

复合查询是指将多个简单查询通过特定的SQL语法组合起来,形成一个功能更加强大的查询语句。与简单查询相比,复合查询能够:处理更复杂的数据关系减少应用程序中的数据处理逻辑提高数据检索效率(当正确使用时)实现跨表的数据关联和分析子查询适合解决分步查询问题,但要注意性能连接查询是处理表关系的强大工具UNION提供了垂直合并结果集的能力CTE提高了复杂查询的可读性和可维护性。

2025-07-02 20:04:27 845

原创 XXL-JOB快速入门(什么是XXL-JOB、部署XXL-JOB、在SpringBoot项目中接入XXL-JOB、XXL-JOB中的核心概念、集群环境下任务的路由策略)

XXL-JOB 是一个分布式任务调度平台,由中国人许雪里(一个来自美团的程序员)开发XXL-JOB 的核心设计目标是开发迅速、学习简单、轻量级、易扩展,XXL-JOB 现已开放源代码并接入多家公司的线上产品线许雪里/xxl-jobXXL开源社区。

2025-06-30 22:51:27 1056

原创 【Java 开发日记】你会不会使用 SpringBoot 整合 Flowable 快速实现工作流呢?

Flowable 是一个使用 Java 编写的轻量级业务流程引擎。Flowable 流程引擎可用于部署 BPMN2.0 流程定义(用于定义流程的行业 XML 标准),创建这些流程定义的流程实例,进行查询,访问运行中或历史的流程实例与相关数据,等等。Java 领域另一个流程引擎是 Activiti,不这两个东西只要会使用其中一个,另一个就不在话下。咱就不废话了,上代码吧。

2025-06-29 16:18:05 835

原创 解决MySQL启动报错ERROR 2003 (HY000) Can‘t connect to MySQL server on ‘localhost‘ (10061)

时,通常表示MySQL服务未正常启动或未被系统识别。此时若未找到MySQL服务(如图红框标注),需手动安装服务。通过以上步骤,可解决因服务未启动或未注册导致的连接失败问题。输入密码后,若成功进入MySQL命令行界面,则问题解决。此步骤对应命令行操作中的路径切换。显示成功连接后的数据库列表。

2025-06-28 10:42:59 723

原创 分布式系统中分布式ID生成方案的技术详解

选择合适的分布式ID生成方案需要综合考虑系统的规模、性能需求、ID的顺序性和唯一性要求以及对网络的依赖程度。不同的方案各有优缺点和适用场景,在实际应用中需要根据具体情况进行权衡和选择。通过合理使用分布式ID生成方案,可以确保分布式系统中数据的唯一性和一致性,提高系统的可靠性和性能。

2025-06-27 18:40:33 917

原创 Tomcat 启动报错 : There is insufficient memory for the Java Runtime Environment to continue

Tomcat 启动报错 “There is insufficient memory for the Java Runtime Environment to continue” 通常是由于系统内存不足或 JVM 内存参数设置不当引起的。通过检查系统内存、调整 JVM 内存参数以及检查其他进程的内存使用情况,可以解决这个问题。

2025-06-26 20:23:22 555

原创 【JavaEE】Spring AOP的注解实现

除了上面讲的基于注解的方式实现Spring AOP 还有远古的通过xml和代理的方式实现。然后就跟我们前面使用的注解一样包含,生命周期@Retention,作用范围@Target,交给Spring管理。当我们的切点表达式是一样的时候,像上面我们还是在每一个通知类型的注解中,都使用了相同的表达式。我们就可以使用定义注解的式以及另种切点表达式 @annotation 来描述这类的切点。通过上面的方法,使用了自定义注解修饰的方法,就可以添加切面类的通知。Spring AOP 核心概念:切点,连接点,通知,切面。

2025-06-24 21:54:58 978

原创 我的第1个爬虫程序——豆瓣Top250爬虫的详细步骤指南

venv。

2025-06-23 20:36:12 1230

原创 SpringMVC(看这一篇就够了)

MVC全称Model View Controller,是一种设计创建Web应用程序的模式。这三个单词分别代表Web应用程序的三个部分:Model(模型):指数据模型。用于存储数据以及处理用户请求的业务逻辑。在Web应用中,JavaBean对象,业务模型等都属于Model。View(视图):用于展示模型中的数据的,一般为jsp或html文件。Controller(控制器):是应用程序中处理用户交互的部分。接受视图提出的请求,将数据交给模型处理,并将处理后的结果交给视图显示。

2025-06-23 20:30:27 897

原创 获取微信昵称的方法

在不同的开发场景下,获取微信昵称的方式有所不同。以下将分别介绍在 uni-app 和 Spring Boot 开发场景中获取微信昵称的具体方法。

2025-06-22 21:39:18 1056

原创 极客大学java进阶训练营怎么样,图文详解!

送大家一个小福利,点击领取Java全套进阶资料存中…(img-mjxDHxXR-1624801401098)][外链图片转存中…(img-ZYNlVeSq-1624801401099)]

2025-06-19 21:22:14 292

原创 MySQL 多列 IN 查询详解:语法、性能与实战技巧

优先使用联合索引确保的查询顺序与索引一致。控制条件组数量单次查询避免超过 1000 组值。监控执行计划定期用EXPLAIN避免全表扫描若未命中索引,考虑优化查询条件或数据结构。事务中谨慎使用长时间持有锁可能导致并发问题。

2025-06-18 21:56:33 693

原创 使用 Docker 安装 MySQL 的详细教程

Docker 是一种开源的容器化平台,可以轻松地将应用程序及其依赖项打包在一个容器中,从而在任何环境中运行。本文将详细介绍如何使用 Docker 安装 MySQL 数据库,并包括端口配置和防火墙设置。

2025-06-16 11:15:41 985

原创 深入浅出:Spring IOC&DI

IOC(Inversion of Control),是一种设计思想,在之前的SpringMVC里就在类上添加@RestController和@Controller注解就是使用了IOC,这两个注解就是在Spring中创建一个对象,并将注解下的类交给Spring管理,Spring框架启动时就会自己加载这个类,交给Spring管理的类我们统称为Bean。IOC的意思就是控制反转,在之前我们的面向对象编程中,我们要使用一个对象需要自己new出来,但是现在使用IOC思想后,我们创建对象的时候,是通过容器来创建的,

2025-06-13 18:24:29 923

原创 宝塔安装的 MySQL 无法连接的情况及解决方案

宝塔面板是一款流行的服务器管理工具,其中集成的 MySQL 数据库有时会出现连接问题。本文详细介绍两种最常见的 MySQL 连接错误:“1130 - Host is not allowed to connect” 和 “1045 - Access denied”,以及它们的解决方案。

2025-06-13 18:18:48 1269

原创 sql代码格式化工具

搜索并安装“sqlinform”或“poor man’s t-sql formatter”插件。选择“插件”菜单,找到相应的格式化选项(如“format selected sql”),点击即可格式化选中的语句。如果没有安装插件,也可以手动格式化SQL语句。通过以上方法,可以有效地格式化SQL语句,提高代码的可读性和可维护性。打开Notepad++,进入“插件”菜单,选择“插件管理器”。在编辑器中打开包含SQL语句的文件,或直接输入SQL代码。手动格式化时,注意保持SQL的语法正确性。

2025-06-12 20:31:51 430

原创 Spring AI应用:利用DeepSeek+嵌入模型+Milvus向量数据库实现检索增强生成--RAG应用(一)(超详细)

检索增强生成(Retrieval-Augmented Generation,RAG)是一种结合了检索和生成模型的方法,旨在提高生成模型在问答等任务中的效果。RAG模型由一个检索器和一个生成器组成,检索器用于从大规模文本库中检索相关信息,然后将这些信息传递给生成器来生成回答或解释。RAG模型结合了检索的准确性和生成的灵活性,旨在解决传统生成模型在生成长文本、知识推理等方面的不足之处。通过在生成过程中利用检索到的信息,RAG能够生成更加准确和丰富的文本,并在问答任务中取得更好的效果。

2025-06-12 20:29:52 1299

原创 从0开始教你,如何进行前后端的数据库(MySQL)连接

使用 MySQL 创建数据库和数据表首先,创建一个 MySQL 数据库,用于存储留言信息。在数据库中创建一个表,定义留言的字段,如留言内容、用户信息、留言时间等。使用 Node.js 开发后端接口并连接数据库使用 Node.js 和 Express 框架开发后端 API。安装并配置 MySQL 驱动(如mysql2或sequelize)来连接数据库。创建相关的 API 接口,例如GET用于获取留言列表,POST用于添加留言等。后端与数据库交互,处理数据的增删改查(CRUD)操作。

2025-06-11 21:13:46 1079

原创 【MySQL】索引(B+树详解)

的记录里的 字段量进行缓存,所以非叶子节点里 也不会有 所有记录个数对应的 总字段量 那么多,

2025-06-11 21:11:40 778

原创 【RabbitMQ】 RabbitMQ高级特性

生产者首先发送条消息,然后经过交换器(normal_exchange)顺利地存储到队列(normal_queue)中. 由于队列normal_queue设置了过期时间为10s, 在这10s内没有消费者消费这条消息, 那么判定这条消息过期. 由于设置了DLX, 过期之时, 消息会被丢给交换器(dlx_exchange)中, 这时根据RoutingKey匹配, 找到匹配的队列(dlx_queue), 最后消息被存储在queue.dlx这个死信队列中.死信队列接收到消息: ttl test 10s…

2025-06-10 18:31:11 734

原创 [Git] 分布式版本控制 & 远程仓库协作

Git 是分布式的,每个人都有完整的本地版本库。远程仓库(如 GitHub、Gitee)用于方便大家交换彼此的修改。:从远程仓库下载一份完整的本地版本库。克隆通常使用 HTTPS 或 SSH 协议。SSH 需要配置 SSH Key 实现无密码推送。:查看本地仓库关联的远程主机信息。origin是默认的远程主机名。git push <远程主机名> <本地分?名>:将本地分支的提交上传到远程仓库的对应分支。git pull <远程主机名> <远程分?名>:从远程仓库的指定分支抓取最新提交并合并。

2025-06-10 18:29:11 917

原创 MySQL 数据库索引详细教程

索引是数据库中用于提高查询性能的数据结构,类似于书籍的目录。它可以帮助数据库引擎快速定位到表中的特定数据,而不需要扫描整个表。合理设计和使用索引是MySQL性能优化的关键。需要根据实际查询模式设计索引,定期审查和优化索引策略,避免过度索引和索引不足两个极端。通过EXPLAIN分析查询执行计划,结合业务特点不断调整索引策略,才能获得最佳的数据库性能。

2025-06-09 18:24:07 747

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除