- 博客(43)
- 收藏
- 关注
原创 Springboot3学习(5、Druid使用及配置)
启动项目,我们可以看到Springboot3自带的数据库连接池是HikariPool,HikariPool的主要优点是高性能,而我们即将集成的Druid数据库连接池,主要有点则是丰富的扩展以及优秀的监控性能。从学习的角度来讲,Druid相比较其他数据库连接池而言,更加的全面。我们新增application.yml,来配置druid相关配置,注释掉application.properties(ymlx相比于properties,更加的简洁和易读),配置如下。输入配置的账号密码,进入监控页面,如下图。
2026-03-17 15:51:25
184
原创 Redis队列和阻塞队列
普通的redis队列,为了实现业务,通常会使用while进行循环,这样的话没有消息时依旧会频繁的执行循环,造成cpu的空转,所以一般会在代码中增加sleep来解决该问题,但因此又会造成消息延迟问题。使用 BRPOP 这种阻塞式方式拉取消息时,还支持传入一个「超时时间」,如果设置为 0,则表示不设置超时,直到有新消息才返回,否则会在指定的超时时间后返回 NULL。redis队列提供了 “阻塞式” 拉取消息的命令:BRPOP / BLPOP,这里的 B 指的是阻塞(Block)。下面是某业务完整的消费者代码。
2026-03-17 13:25:26
28
原创 nginx中的proxy_set_header参数详解
proxy_set_header 是 Nginx 配置中用于设置代理请求 HTTP 头部的指令。当 Nginx 作为反向代理时,它允许自定义从客户端接收到的请求或添加新的请求头,然后将其转发到后端服务器。这对于维护 HTTP 协议的连贯性、安全性和功能性至关重要。X-My-Header 是一个自定义的请求头字段,用于存储自定义信息。上游服务器可以通过读取 X-My-Header 字段获取自定义信息。
2026-03-17 11:03:07
335
原创 net.sf.jsqlparser.statement.select.Select.getSelectBody()
发生这个问题就是因为Pagehelper中jsqlparser和Mybatis-puls中jsqlparser冲突,以我的项目来说,我项目中的Pagehelper中jsqlparser版本为4.2而Mybatis-puls中jsqlparser的版本为4.9,就导致版本兼容问题。如果你想以Pagehelper中jsqlparser的版本来使用的话,那么项目将启动不起来,就比如拿我的项目来说,如果我在pom文件中添加。你可以提升一下pagehelper的版本 这是maven中央仓库。
2026-03-17 05:32:51
198
原创 maven导入spring框架
spring-jdbc包括了一些如jdbcTemplate的工具类。4.Spring test依赖:方便做单元测试和集成测试。在eclipse导入maven项目,在pom.xml文件中加入以下内容。2.Spring dao依赖。3.Spring web依赖。1.Spring核心依赖。
2026-03-17 02:55:25
270
原创 Spring Boot 3.X:Unable to connect to Redis错误记录
IOC容器中的Spring为我们自动配置的RedisConnectionFactory的clientOptions.protocolVersion仍然是null,但是此时Redis已经可以正常连接上了,说明Lettuce 6.5.0已经解决了认证连接bug。这种方法就比较简单粗暴了,既然“spring-boot-starter-data-redis”提供的lettuce依赖版本为6.4,那我们就不用它提供的了,自己引入版本为6.5的lettuce依赖。于是我先去检查了配置文件的连接信息,发现没问题;
2026-03-14 12:17:58
332
原创 python的sql解析库-sqlparse
sqlparse 是一个 Python 库,是一个用于 Python 的非验证 SQL 解析器, 用于解析 SQL 语句并提供一个简单的 API 来访问解析后的 SQL 结构。可以帮助解析复杂的 SQL 查询,提取信息,或者对 SQL 语句进行一些基本的分析和操作。
2026-03-14 11:05:01
282
原创 Nginx 配置:alias 和 root 的区别
是两个用于映射文件路径的重要指令。虽然它们的功能表面相似,实际使用中却有显著的差异。如果不清楚两者的用法和特点,可能会导致资源路径错误或访问异常。是 Nginx 配置中常用的两种指令,理解它们的区别对于正确配置文件路径非常重要。通过正确使用它们,可以避免资源定位错误,提升服务器的配置效率和维护性。定义了资源的根目录,Nginx 会将 URL 中匹配的路径拼接到。中的路径,而是直接替换整个路径。指定的目录后,用于定位文件。以下是一个完整的示例,展示。在 Nginx 的配置中,用于替换匹配的路径,与。
2026-03-14 03:45:21
174
原创 MySQL事件功能简介
MySQL 事件调度器是一种内置的定时任务机制,允许用户在指定的时间或周期内自动执行 SQL 语句。它类似于操作系统中的 cron 作业或 Windows 任务计划程序,但专门用于数据库内部的任务管理。定期数据备份:自动将重要数据备份到指定表或文件中。数据清理:定时删除过期或不再需要的数据,保持数据库的整洁。报告生成:按周期生成业务报表,方便分析和决策。自动化任务:执行重复性高、易出错的手动操作,提高工作效率和准确性。
2026-03-14 02:29:47
379
原创 MySQL JSON数据类型全解析(JSON datatype and functions)
JSON(JavaScript Object Notation)是一种常见的信息交换格式,其简单易读且非常适合程序处理。MySQL从5.7版本开始支持JSON数据类型,本文对MySQL中JSON数据类型的使用进行一个总结。在MySQL中,JSON数据是以字符串形式表现的,但是它有自己的解析规则,利用某些途径可以将字符串转换为JSON类型数据,这个过程叫做规范化(normalization),在规范化过程中,MySQL会对数据格式进行验证,若字符串不是有效的JSON格式,那么就会报错。
2026-03-14 01:15:47
192
原创 Java学习进阶知识篇
Java面向对象编程的进阶知识在面向对象的世界里,世界万物即对象。对象分为两种一是静态对象(即属性),二是动态对象(方法、行为),比如一只鸟,静态对象就是指鸟的翅膀、重量、羽毛颜色等等,动态对象就是指鸟的飞行、走路、觅食、叫声等等类是一类事物的一个统称,对象是类实例化之后的一类,而整个类就是所有对象的统称、人类可以实例化出一个男人、女人;鸟类可以实例化出一个大雁、燕子、信鸽;图形类可以实例化出三角形、平行四边形、五角形。一个类抽象出来一个实体,然后通过这个实体来解决实际的问题。封装。
2026-03-13 23:47:52
306
原创 【Oracle11g SQL详解】日期和时间函数:SYSDATE、TO_DATE、TO_CHAR 等
FROM dual;-- 结果:2024-12-31FROM dual;-- 结果:Today is 11TH DECEMBER, 2024。
2026-03-13 19:09:17
225
原创 精准删除:掌握SQL中的DELETE语句
其中,DELETE语句是用于从数据库表中删除数据的重要工具。本文将详细解释如何使用SQL的DELETE语句来删除数据,并提供实际的代码示例,帮助你精确控制数据的删除过程。通过本文的介绍,你应该能够理解DELETE语句的用法,并学会如何在实际应用中安全、有效地删除数据。掌握SQL中的DELETE语句,将使你能够更加精准地控制数据的生命周期,为你的数据管理和分析提供坚实的基础。软删除是一种删除策略,通过设置一个标志位而不是真正从数据库中删除数据。这将标记ID为1的客户记录为已删除,而不是真正从数据库中删除。
2026-03-13 03:09:32
230
原创 初级爬虫实战——巴黎圣母院新闻
由于一个版面对应一篇文章,所以版面url 、更新时间、标题和文章是一样的,并且按照设计版面id和文章id的区别只是差了个01,所以可以传递版面url、版面id、更新时间和标题四个参数到解析文章的函数里面。我们发现有两种方式查看所有新闻,一种是按照类别,一种是按照时间,经过进一步的观察我们发现按照时间查看新闻会更全,所以我们选择按照年份(按照月份和按照年份一样的效果)爬取。的字段,包含标题、内容,作者,发布时间,链接地址,文章快照 (可能需要翻墙才能访问)# 转义网页中的图片标签。# 反转译文件中的插图。
2026-03-13 00:26:15
238
原创 【postgresql】分区表管理
5.内置分区表与其分区的继承关系。2.查看分区表和分区索引大小。6.查看分区表的分区数量。4.查看分区表数据分布。1.查看有哪些分区表。7.检查表的分析时间。
2026-03-12 10:46:07
149
原创 SQL sever数据导入导出实验
bcp [TPC-H].[dbo].[PART] out “D:学校d大二下数据库实验一数据文件ile.csv” -c -t -T -S . -U sa -P 1234。(1)右键“数据库”,点击“新建数据库”即可。(2)进行导入,导入代码如下。1.创建数据库TCP-H。(1)下载安装bcp工具。(1)下载csv文件。
2026-03-12 08:20:07
206
原创 SpringBoot Maven快速上手
官方对于 Maven 的描述:Maven 官网翻译过来就是:Maven 是一个项目管理工具。基于 POM (Project Object Model,项目对象模型)的概念,Maven 可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。POM 简介:每一个 Maven 工程都有一个pom.xml文件,位于根目录中,包含项目构建生命周期的详细信息。通过pom.xml文件,我们可以定义项目的坐标、项目依赖、项目信息、插件信息等等配置。
2026-03-12 00:34:35
205
原创 Spring 过滤器:OncePerRequestFilter 应用详解
OncePerRequestFilter是Spring提供的一个过滤器基类,它确保了在一次完整的HTTP请求中,无论请求经过多少次内部转发,过滤器的逻辑都只会被执行一次。这对于需要在请求处理之前或之后进行一次性设置或清理资源的场景特别有用。OncePerRequestFilter是Spring框架中一个非常有用的工具,它可以帮助你在一次完整的HTTP请求中仅执行一次过滤器的逻辑。
2026-03-11 22:04:37
163
原创 Redis 设置密码无效问题解决
打开文件后 “Ctrl+F”查找“requirepass”,找到“# requirepass foobared”我有两个后缀是 .conf 的文件,这两个文件都用编辑器打开,比如我用Notepad++打开的。再在命令窗口输入“redis-server.exe redis.windows.conf”回车。在redis的目录下找到后缀是 .conf 的文件,文件的名称不统一,以我的为例如下图。输入“exit” 回车就立即退出redis。输入“redis-cli.exe” 回车。都返回的是“OK”,就成功了。
2026-03-11 19:24:58
47
原创 Neo4j图数据库学习(二)——SpringBoot整合Neo4j
本文介绍如何通过SpringBoot整合Neo4j的方式,对图数据库进行简单的操作。Neo4j和SpringBoot的知识不再赘述。Neo4j图数据库学习(一)——初识CQL由于作者的水平非常有限,难免会出现错误,欢迎各位指正!假如您有任何想法,也欢迎交流!
2026-03-11 00:43:14
234
原创 Mysql convert函数、convert用法、字符串转数字、字符串转日期、类型转换函数
CAST() 和 CONVERT() 都可以更改 MySQL 中的数据类型。主要区别在于 CONVERT() 还可以将数据的字符集转换为另一个字符集。convert(expr,type)语法与 CAST(expr AS type)是等效的,所以支持的数据类型也是一致的,可以直接参考。将 value 转化为 NCHAR (类似 CHAR, 但生成一个具有国家字符集的字符串)将 value 转化为 SIGNED (有符号的 64 位整数)将 value 转化为 CHAR 类型 (固定长度的字符串)
2026-03-10 05:29:34
315
原创 docker安装redis
Docker 是一个开源的应用容器引擎,参考链接:【docker使用安装教程Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 的 NoSQL 数据库,并提供多种语言的 API。本文将介绍docker上安装redis容器的详细过程。
2026-03-10 01:28:14
186
原创 如何安装配置Goland并使用固定公网地址SSH远程连接本地服务器
我们在本地测试成功,但是我们如果需要长期异地办公,需要结合cpolar内网穿透实现公网远程使用服务器,这里我们需要将SSH使用的本地IP映射为公网TCP地址,才能实现异地开发。地址保留成功后,复制生成的公网地址,打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的TCP隧道,点击。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。为了方便演示,我们在前述过程中使用了Cpolar生成的TCP地址隧道,其公网地址是随机生成的。
2026-03-09 04:51:18
361
原创 【分布式文件存储系统Minio】2024.12保姆级教程
http://ip:9090/2.运行容器3.进行配置1.格式2.具体配置4.查看桶5.给桶开放权限3.搭建minio模块1.创建一个oss模块1.在sun-common下创建2.sun-common-oss 引入依赖2.sun-common-oss 模块1.概览3.FileInfo.java4.MinioUtil.java5.StorageAdapter.java6.MinioStorageAdapter.java3.sun-demo操作minio
2026-03-09 00:48:23
248
原创 Windows下redis安装
进入Redis安装包目录,安装服务:redis-server.exe --service-install redis.windows.conf --service-name redisserver1 --loglevel verbosewin+r -> services.msc,可以看到服务安装成功。
2026-03-08 11:17:54
179
原创 springboot集成onlyoffice(部署+开发)
最近有个项目需求是实现前端页面可以对word文档进行编辑,并且可以进行保存,于是一顿搜索,找到开源第三方onlyoffice,实际上onlyOffice有很多功能,例如文档转化、多人协同编辑文档、文档打印等,我们只用到了文档编辑功能。目 录前言1、onlyoffice的部署2、代码逻辑开发2.1、前端代码2.2、后端代码3、问题总结3.1、访问案例失败3.2、加载word文档失败3.3、系统后端有token验证问题3.4、使用文档地址访问问题4、后记开始敲黑板了。
2026-03-08 01:53:09
200
原创 Spring Boot实现多数据源连接和切换
在 Spring Boot 中实现多数据源连接和切换,可以通过以下几种方案来实现,具体取决于项目的需求、数据库的使用模式和管理的复杂性。以下是一个常见的多数据源切换的实现方案,使用 AbstractRoutingDataSource 来动态选择数据源。创建一个自定义注解,用于指定当前方法执行时需要使用的数据源。// 数据源标识,默认使用primary数据源数据源配置:为每个数据源配置DataSourceBean。动态数据源路由:使用来实现动态切换数据源。ThreadLocal存储:使用。
2026-03-07 04:11:56
202
原创 MySQL root用户密码忘记怎么办(Reset root account password)
在使用MySQL数据库的的过程中,不可避免的会出现忘记密码的现象。普通用户的密码如果忘记,可以用更高权限的用户(例如root)进行重置。但是如果root用户的密码忘记了,由于root用户本身就是最高权限,那这个方法就行不通了。本文介绍2种在忘记root用户用户密码的情况下,如何进行重设。
2026-03-06 08:34:17
212
原创 docker安装redis
Docker 是一个开源的应用容器引擎,参考链接:【docker使用安装教程Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 的 NoSQL 数据库,并提供多种语言的 API。本文将介绍docker上安装redis容器的详细过程。
2026-03-06 01:22:56
174
原创 自己编译RustDesk,并将自建ID服务器和key信息写入客户端
今天总算是把编译环境给折腾清楚了,编译出来了至少能用,但说不上好用,问题还不少,官方的客户端就是要手工填写ID服务器地址和key才可以用,而且还容易被别人白嫖你搭建的服务器,当然如果拿到你编译后的客户端,也是存在被白嫖的可能。这方面还没有找到解决方法。遗留未解决的问题有,需要copy src目录才可以运行程序,还没有找到方法像官方编译的一样只有一个文件。需要是用管理身份运行程序蔡可以执行。
2026-03-05 07:12:19
415
原创 初级爬虫实战——伯克利新闻
由于一个版面对应一篇文章,所以版面url 、更新时间、标题和文章是一样的,并且按照设计版面id和文章id的区别只是差了个01,所以可以传递版面url、版面id、更新时间和标题四个参数到解析文章的函数里面。由于该新闻只有一个模块,所以直接请求该模块地址即可获取该模块的所有信息,但是为了兼容多模块的新闻,我们还是定义一个数组存储模块地址。的字段,包含标题、内容,作者,发布时间,链接地址,文章快照 (可能需要翻墙才能访问)获取文章id,文章url,文章更新时间和当下操作时间。多模块的新闻网站例子如下(4个模块)
2026-03-05 03:31:23
379
原创 【MySQL安装】—报错“Can‘t connect to local MySQL server through socket ‘varlibmysqlmysql.sock‘”
一定要root用户下执行命令,atwqf用户是没有权限,执行"systemctl restart mysqld"命令重启mysql服务会报错。执行 "sudo cat /var/log/mysqld.log"命令,查看mysql运行日志,看错误原因。执行 “mysql -uroot -p” 命令,进入MySQL数据库。systemctl restart mysqld #重启mysql服务。/var/lib/mysql路径下缺少mysql.sock文件。
2026-03-04 07:26:56
216
原创 Spring Boot 3.X:Unable to connect to Redis错误记录
IOC容器中的Spring为我们自动配置的RedisConnectionFactory的clientOptions.protocolVersion仍然是null,但是此时Redis已经可以正常连接上了,说明Lettuce 6.5.0已经解决了认证连接bug。这种方法就比较简单粗暴了,既然“spring-boot-starter-data-redis”提供的lettuce依赖版本为6.4,那我们就不用它提供的了,自己引入版本为6.5的lettuce依赖。于是我先去检查了配置文件的连接信息,发现没问题;
2026-03-03 03:34:14
283
原创 Nginx如何实现 TCP和UDP代理?
Nginx是一个高性能的HTTP和反向代理服务器,同时也支持TCP/UDP代理。在1.9.13版本后,Nginx已经支持端口转发,包括TCP和UDP协议。Nginx的TCP/UDP代理功能允许它作为一个中间人,接收来自客户端的TCP或UDP请求,并将这些请求转发到指定的后端服务器,然后将后端服务器的响应返回给客户端。通过这些配置,Nginx可以作为一个强大的TCP/UDP代理服务器,适用于多种应用场景,如数据库、邮件服务器、游戏服务器等。
2026-03-03 00:33:29
369
原创 linux 设置tomcat开机启动
在Linux系统中,要配置Tomcat开机自启动,可以创建一个名为 tomcat.service 的 systemd 服务文件,并将其放置在 /etc/systemd/system/ 目录下。确保 JAVA_HOME、CATALINA_HOME、CATALINA_BASE 等环境变量设置正确,并且 ExecStart 指向正确的Tomcat启动脚本路径。打开conf/server.xml,找到下面代码,添加属性maxDays=“30”。这样配置后,无论系统重启还是启动,Tomcat都将作为服务自动启动。
2026-03-02 06:58:42
355
原创 Spring Boot与MyBatis
Spring Boot是一个用于创建独立的、基于Spring的生产级应用程序的框架,它简化了Spring应用的初始搭建以及开发过程。MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。将Spring Boot和MyBatis结合使用,可以高效地开发数据驱动的应用程序。
2026-03-01 22:02:04
567
原创 Redis的优势和特点
Remote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。
2026-03-01 11:42:57
626
原创 QoS质量配置
当自定义排队在某个接口上生效的时候,系统将会为这个接口维护17个输出队列。你可 以指定队列1到16。与每一个输出队列相关的是可配置字节总数以及数据包的类型。可 配置字节总数指定在系统移动到下一个队列以前,系统应当从当前的队列中发送多少字 节的数据。编号为0的队列是一个系统队列;在任何编号为1到16之间的队列得到处理以前,编号 为0的队列将先被清空。系统把优先权级别高的数据包,例如保持活动数据包以及信令 数据包,安排到这个队列。其他的通信不能够使用这个队列。
2026-02-28 11:23:13
481
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅