自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring Boot 实战:轻松实现文件上传与下载功能

总结本文所介绍的 Spring Boot 文件上传与下载功能的实现步骤、关键要点以及注意事项。强调在实际开发过程中,安全性与稳定性是至关重要的因素,需要开发者充分考虑各种边界情况并进行合理的处理。同时,展望未来可能的扩展方向,如与云存储服务集成,实现更强大、灵活的文件管理功能,以满足日益增长的业务需求。

2026-04-04 05:28:19 329

原创 MySQL数据库误删恢复_mysql 数据 误删

server-id是 MySQL 数据库中的一条配置参数,用于设置 MySQL 实例的唯一 ID。在导航{3.6.5、恢复表} 我们执行的语句mysqlbinlog --start-position=720 --stop-position=1579 mysql-bin.000001 | mysql -uroot -p, 事件开始位置720 ,事件结束位置1579,说明我们位置不对呗,这个位置只能恢复表不能恢复数据。-p为密码,如果设置了密码,可直接在-p后链接输入,如:-proot;为什么 往下继续↓↓。

2026-04-04 02:28:41 269

原创 SpringBoot3.3.0集成Knife4j4.5.0实战

在类中已经完美解决了全局自定义错误码,因此在单个接口中已不建议再写,除非有特殊要求。以下接口类中自定义错误码仅为示例。·········/*** 系统公共类*/@Tag(name = "1-系统公共类", description = "系统公共类")@Autowired。

2026-04-02 07:30:43 267

原创 pg_sql关于时间的函数

作用:提取时间中某些内容(可以实现和date_part类似功能)时间戳转日期(时间戳为数值类型,若为字符型需进行转换)作用:获取日期对应的参数是当前年的第几(周、月、季)格式:日期 +/- interval ‘加减值’格式:date_trunc((‘参数’,日期))格式:date_part(‘参数’,日期)格式:extract(提取值from时间)作用:获取日期对应参数的起始。作用:实现时间日期的加减。

2026-04-02 04:14:34 14

原创 MS SQL Server 实战 排查多列之间的值是否重复

比如我们有一组题库数据,主要包括题目和选项字段(如单选选择项或多选选择项),一个合理的数据存储应该保证这些选项列之间不应该出现重复项目数据,比如选项A不应该和选项B的值重复,选项B不应该和选项C的值重复,以此穷举类推,以保证这些选项之间不会出现重复的值。在实际的应用中每一个环节我们都难免会出现一些失误,因此不断的根据实际的发生情况总结经验,通过计算来分析,将问题扼杀在摇篮里,以最大保证限度的保证项目运行效果的质量。如图我们假设设计了错误的数据源,第4题的A选项与D选项重复,第8题的A选项与C选项重复了。

2026-04-02 00:57:30 335

原创 idea创建SpringBoot自动创建Lombok无效果(解决)

移除optional属性optional属性表明该依赖不会被传递到依赖的模块中。如果你只在当前模块使用 Lombok就保留;但如果 Lombok 的注解被多个模块引用,就移除optional。所以我移除了。

2026-04-01 23:07:50 31

原创 idea创建springBoot的五种方式

使用jar包创建就行,也是maven项目,jdk选1.8,但是下面的java没有8的,没关系,先选上,后面创建成功了再改。最后一种就是自己先创建一个普通的maven项目,然后自己手动搭建成一个springboot项目。点创建之后他会生成一个压缩包,然后解压,用idea打开就行了。其他选择跟第一种一样,不过这里jdk有8的版本了。也是下载成一个压缩包,然后解压,用idea打开。idea直接从spring.io官网下载。都选择好之后点获取代码,选下载就行。idea从阿里云官网下载。从spring官网上下载。

2026-04-01 23:07:19 207

原创 新版 Navicat Premium 17 安装教程 (亲测可用)

卸载完成后 把补丁包下载解压后 执行下图红框内的文件,打开之后几秒钟会闪退,这种情况正常的,然后找到下载好安装包开始安装Navicat Premium17。1、已经安装的需要在控制面板>卸载程序 找到Navicat Premium 右键点击卸载,如果未安装直接跳过这一步,进行第二步即可。

2026-04-01 19:42:37 405 1

原创 十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解

REST(Representational State Transfer)是一种通过 HTTP 协议与 Web 服务交互的架构风格。RESTful Web 服务遵循一系列约定,通常使用 HTTP 方法(如 GET、POST、PUT、DELETE)来进行资源的创建、查询、更新和删除操作。每个资源通常由一个 URL 唯一标识,且资源的数据通常以 JSON 返回。**跨域(Cross-Origin)**是指浏览器在不同的域、协议、端口之间进行资源请求的行为。

2026-04-01 05:39:37 374

原创 Windows系统启动Redis

在以下地址中选择一个Windows系统可以使用的版本。即Redis可以正常工作。出现以下界面即启动成功。启动Redis客户端。

2026-04-01 02:34:30 180

原创 springboot+mybaties项目中扫描不到@mapper注解的解决方法

当使用@Autowired注解的时候,其实默认就是@Autowired(required=true),表示注入的时候,该bean必须存在,否则就会注入失败。两者的区别是@ComponentScan是定义包扫描的规则,设置扫描包的路径,然后根据定义的规则找出哪些需类需要自动装配到spring的bean容器中,然后交由spring进行统一管理。给启动类添加@ComponentScan(“Mapper层路径”)或者@MapperScan(“Mapper层路径”),这样子可以自定义Mapper层的资源目录。

2026-03-31 05:53:16 231

原创 Node.js使用教程

如上所述,Express.js是构建Node.js Web服务器的流行选择。继续实践,探索更多的库和框架,以及学习Node.js的最佳实践。在开发过程中,您可能需要根据不同的环境(如开发、测试、生产)使用不同的配置。您可以在操作系统中设置环境变量,然后在Node.js应用中使用它们。是一个Express.js中间件,它可以帮助您保护应用免受一些常见的Web漏洞的攻击。Node.js拥有一个庞大的模块生态系统,可以通过npm(Node.js的。在您的工作目录中,创建一个新的文件夹作为项目目录,例如命名为。

2026-03-31 02:40:22 166

原创 MySQL -- 约束

主要的作用是保证数据的有效性,也可以理解为数据的正确性(数据本身是否正确,关联关系是否正确) **人工检查数据的完整性工作量非常大,在数据库中定义一些约束,那么数据在写入数据库的时候,就会帮我们做一些校验.**并且约束一般是在指定列上创建的.

2026-03-30 11:51:55 293

原创 Java进阶教程(一)关键字

具体在Window->Preferences->Java->Installed JREs,选择相关版本,点击edit,在Default VM arguments里面输入-ea。expression1表示一个boolean表达式,expression2表示一个基本类型、表达式或者是一个Object,用于在失败时输出错误信息。synchronized:当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。instanceof:在运行时指出对象是否是特定类的一个实例。

2026-03-30 11:04:57 153

原创 Go基础之环境搭建

Go语言,也被称为Golang,是一种由Google开发的静态类型、编译型编程语言,是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。Go是从2007年末由主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。go.mod是Go Modules的核心文件,用来定义模块及其依赖项。

2026-03-30 10:18:38 207

原创 Redis Desktop Manager(Redis可视化工具)安装及使用详细教程

如下图所示:图2.2.6.1图2.2.6.1如下图所示:图3.2.1图3.2.1。

2026-03-30 06:34:28 355

原创 MySQL 字符串日期格式转换

通过和函数,MySQL允许你在字符串和日期类型之间转换,并在不同的日期格式之间自由转换。这在进行数据清洗、处理和报表生成时非常有用。MySQL常见时间格式化:(与字符串中的对应使用)%Y: 年份,四位数字%m:月份,两位数字%d: 日期,两位数字%H:小时(24小时制),两位数字%i: 分钟,两位数字%s: 秒,两位数字扩展:MySQL中如果想将日期转换成字符串可以使用。

2026-03-30 03:02:00 163

原创 【MySQL】MVCC详解, 图文并茂简单易懂

MVCC也称:多版本并发控制. 顾名思义,MVCC是通过数据行的多个版本管理来实现数据库的并发控制.MVCC使得在InnoDB的事务隔离级别下, 执行一致性读操作有了保证. 简单来说就是: 在需要读取一些正在被另一个事务更新的行数据时, 读取之前的历史版本数据(旧数据);而不需要等待另一个事务释放锁.并不是所有的存储引擎都支持MVCC技术, 本文讲解的是MySQL中InnoDB存储引擎下的MVCC机制.ReadView就是事务在使用MVCC机制进行快照读操作时产生的读视图。

2026-03-28 12:31:47 154

原创 springboot+mybaties项目中扫描不到@mapper注解的解决方法

当使用@Autowired注解的时候,其实默认就是@Autowired(required=true),表示注入的时候,该bean必须存在,否则就会注入失败。两者的区别是@ComponentScan是定义包扫描的规则,设置扫描包的路径,然后根据定义的规则找出哪些需类需要自动装配到spring的bean容器中,然后交由spring进行统一管理。给启动类添加@ComponentScan(“Mapper层路径”)或者@MapperScan(“Mapper层路径”),这样子可以自定义Mapper层的资源目录。

2026-03-28 08:23:04 216

原创 Nginx与frp结合实现局域网和公网的双重https服务

背景: 因为局域网内架设了 tiddlywiki、 Nextcloud 等服务,同时也把公司的网站架设在了本地,为了实现局域网直接在局域网内访问,而外部访问通过frps服务器作为反向代理的目的,才有此内容。实现的效果如下图琐事不喜欢废话,这里直接贴代码,有需要的更改关键信息的内容即可。

2026-03-27 13:22:02 198

原创 JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)

我们想要部署一个javaWeb项目到tomcat上,需要了解一些概念Tomcat 是 Apache 软件基金会(Apache Software Foundation)下的一个开源项目,主要用于实现 Java Servlet、JavaServer Pages(JSP)、Java Expression Language(JSTL)、Java WebSocket 技术以及 Java API for WebSocket 的容器。

2026-03-27 09:16:42 224

原创 SpringBoot集成MQTT客户端

③再看MQTTX的会话窗口,我们订阅的jyy/#主题成功接收到了我们写的测试类发送的消息,证明我们的生产者功能也是没问题的。相比于之前的核心配置类,这里新增了 private List topics;①写一个测试类,向主题jyy/1发送消息,这里写了个死循环,因为测试代码执行完后,会结束进程,不方便我演示。对话框右边,背景纯绿色的,就是我们刚刚发送的消息,而左边,黄色线圈起来的,就是我们的订阅主题收到的消息。①启动项目,发现我们的初始化日志,在控制台打印了,我们在核心代码类中,写的初始化mqtt配置日志。

2026-03-26 13:49:39 315

原创 springboot-自定义注解

第一步:定义注解第二步:配置注解第三步:解析注解int age();String sex() default "女";注意:自定义注解要用【@interface】在自定义注解中,其实现部分只能定义注解类型元素!说明:a.访问修饰符必须为public,不写默认为public;b.该元素的类型只能是基本数据类型、String、Class、枚举类型、注解类型以及一维数组;c.该元素的名称一般定义为名词,如果注解中只有一个元素,名字起为value最好;

2026-03-26 12:55:38 308

原创 Spring Boot项目中解决跨域问题(四种方式)

当一个浏览器的两个tab页中分别打开来自百度和谷歌的页面,当浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,即检查是否同源,只有和百度同源的脚本才会被执行。有四种方法解决跨域。我们还可以在Network里看到,浏览器在发送我们输入的用户名,密码等数据之前,还发送了一次OPTIONS的请求,这是浏览器自动发送的,为了验证是否允许跨域访问。*,这个在开发测试的时候可以这么设置,但如果是生产环境,建议不要设置成*,最好是允许哪些域名访问就设置哪些,毕竟限制域名还是很有必要的。

2026-03-26 12:00:30 343

原创 Nginx如何实现 TCP和UDP代理?

Nginx是一个高性能的HTTP和反向代理服务器,同时也支持TCP/UDP代理。在1.9.13版本后,Nginx已经支持端口转发,包括TCP和UDP协议。Nginx的TCP/UDP代理功能允许它作为一个中间人,接收来自客户端的TCP或UDP请求,并将这些请求转发到指定的后端服务器,然后将后端服务器的响应返回给客户端。通过这些配置,Nginx可以作为一个强大的TCP/UDP代理服务器,适用于多种应用场景,如数据库、邮件服务器、游戏服务器等。

2026-03-26 04:36:47 316

原创 Java进阶学习之路

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考java语言是SUN(Stanford University Network,斯坦福大学网络公司 ) 1995年推出的一门高级编程语言,是一种面向Internet的编程语言。Java一开始富有吸引力是因为Java程序可以在Web浏览器中运行。这些Java程序被称为Java小程序(applet)。

2026-03-26 01:30:44 389

原创 SpringBoot整合JWT

一. JWT简介1. 什么是JWT?JWT(JSON Web Token)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。它将用户信息加密到token里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证token的正确性,只要正确即通过验证;应用场景如用户登录。JWT详细讲解请见 github:https://github.com/jwtk/jjwt2. 为什么使用JWT?

2026-03-25 23:18:30 316

原创 SpringBean的生命周期

元信息的配置和解析是一块很大的内容,后续还会专门开一篇章节分析其中的逻辑,本节只是基本介绍一下有那些类型和方案。Spring Bean的生命周期分为四个阶段和多个扩展点。扩展点又可以分为影响多个Bean和影响单个Bean。整理如下:四个阶段实例化 Instantiation属性赋值 Populate初始化 Initialization销毁 Destruction多个扩展点影响多个Bean影响单个BeanAware生命周期。

2026-03-25 22:33:53 308

原创 Redis设置密码

1)打开配置文件redis.conf,找到requirepass关键字,后面就是密码。默认情况下是注释掉的,即默认不需要密码,。mac和liunx的配置文件是redis.conf;windows的配置文件redis.windows.conf。1)使用redis-cli连接上redis服务端,执行如下命令,设置密码为123456。2)执行完毕,无需重启,退出客户端,再次重新登录就需要输入密码了。

2026-03-25 16:08:02 36

原创 nvm下载安装教程(node.js 下载安装教程)

nvm 是一个 node.js 的版本管理工具,相比于仅安装 node.js,我们可以使用 nvm 直接下载或卸载 node.js,可以同时安装多个 node.js 版本,并动态的切换本地环境中的 node.js 环境版本等,在开发过程中更加的便捷。

2026-03-25 14:53:51 206 1

原创 数据界的达克摩斯之剑----深入浅出带你理解网络爬虫(First)

Raghavan等人提出的HIWE系统中,爬行管理器负责管理整个爬行过程,分析下载的页面,将包含表单的页面提交表单处理器处理,表单处理器先从页面中提取表单,从预先准备好的数据集中选择数据自动填充并提交表单,由爬行控制器下载相应的结果页面。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定。聚焦爬虫爬行策略实现的关键是评价页面内容和链接的重要性,不同的方法计算出的重要性不同,由此导致链接的访问顺序也不同。

2026-03-25 00:06:18 307

原创 yum安装redis

如果你没有配置密码,那这个时候你可以使用了,如果配置了密码,还需要授权密码才能使用。如果没有你所需要的版本,那建议你用二进制压缩包方式安装redis。输入info可查看redis信息。

2026-03-24 14:03:38 196

原创 SpringBoot项目整合Knife4J

首先我们要明白我们为什么要去使用API文档,在前后端脱离开发的情况下,前端程序员无法实时的知道后端接口开发的进度,后端程序员总不能每_开发完一个接口或者更新一次接口_就去wx上去跟前端程序员说,嘿!哥们哥们,我新增了一个接口,这个接口是这样这样子…这样沟通的成本也太高了,而且有时候还说不明白,搞得双方都很难受,在这样的情况下,API文档应运而生。API 文档是开发者了解 API 功能和如何正确使用的主要来源。它提供了详细的指导,包括请求格式、参数说明、响应结构。

2026-03-24 02:46:14 192

原创 Springboot 整合 Quartz(定时任务框架)

Quartz是 OpenSymphony 开源组织在 Job scheduling 领域又一个开源项目,完全由 Java 开发,可以用来执行定时任务,类似于 java.util.Timer。持久性作业 - 就是保持调度定时的状态;作业管理 - 对调度作业进行有效的管理;

2026-03-23 16:58:04 311

原创 Spring Security 新版本配置

WebSecurityConfigurerAdapter 已经被废弃了,所以赶紧去看别人是如何写的,但是看到最后都没有看到特别好的博客,我就自己写了一下,可能写的不太好,希望大家可以积极讨论!

2026-03-23 16:25:57 14

原创 Spring Boot中集成MyBatis操作数据库详细教程

在Java开发中,MyBatis是一款轻量级且灵活的持久层框架,支持SQL语句和自定义映射,尤其适合需要复杂SQL操作的应用场景。结合Spring Boot,我们可以更加方便地使用MyBatis进行数据操作。本篇文章将手把手地介绍如何在Spring Boot项目中集成MyBatis,并实现基础的增删改查操作。我们会从依赖配置开始,到实体类、Mapper接口、Service和Controller的创建,最终形成一个简洁易用的应用结构。在包中创建。

2026-03-23 15:52:41 356

原创 redis info 详解

info Commandstats模块,是Redis命令统计信息,包含各个命令的命令名、总次数、总耗时、平均耗时。info Stats模块,是Redis的基础统计信息,包含了:连接、命令、网络、过期、同步等很多统计信息。info CPU模块,包含了Redis进程和子进程对于CPU消耗的一些统计信息。info Persistence模块。info Keyspace模块。info Clients模块。info Server模块。info Memory模块。info Stats模块。info CPU模块。

2026-03-23 10:43:46 40

原创 mysql WITH的多种用法与示例

在一个查询中可以定义多个 CTE,并在查询的其他部分引用它们。这些 CTE 可以相互引用,按顺序处理。WITH非递归 CTE用于分解复杂查询。递归 CTE用于层级数据查询。嵌套 CTE可以组合多个步骤的查询。简化查询逻辑:分解复杂的 SQL 逻辑,使查询更清晰易懂。CTE 是复杂查询中不可或缺的工具,有助于使代码简洁且易于维护。WITH RECURSIVE 举例说明,表结构是id和pid的指向 大概有五层。

2026-03-23 02:50:19 329

原创 如何自由切换 Node.js 版本?

作为开发者,我们经常在不同的项目中需要使用不同版本的 Node.js。有时旧项目需要旧版本,而新项目则可能依赖最新的 Node.js 版本。手动安装、卸载、切换版本不仅麻烦,而且容易出错。为了解决这个问题,Node.js 社区提供了多种方便的工具来管理和切换版本。本文将介绍几种常用的方法来自由切换 Node.js 版本。

2026-03-22 12:28:49 311

原创 启动redis服务

EXEC=/usr/local/redis-6.0.7/bin/redis-server #EXEC:redis文件夹所在的redis-server所在路径。CLIEXEC=/usr/local/redis-6.0.7/bin/redis-cli #CLIEXEC:redis文件夹所在的redis-cli所在路径。CONF=“/usr/local/redis-6.0.7/etc/redis.conf” #CONF:redis启动所用的配置文件。2、进入到redis.conf所在目录。1、可以全局搜索一下。

2026-03-22 11:48:05 230

空空如也

空空如也

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

TA关注的人

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