- 博客(38)
- 收藏
- 关注
原创 解决SpringBoot项目启动错误:找不到或无法加载主类
在开发SpringBoot应用时,经常可能会遇到一个启动错误:“错误:找不到或无法加载主类 com.example.controller.demo.DemoApplication”。本文将介绍三种解决这一问题的方法。
2026-03-05 07:32:51
212
原创 启动springboot项目时报错Web server failed to start. Port 8080 was already in use
在Windows上,您可以使用命令提示符(cmd)来检查端口的使用情况。点击菜单栏 -> 右键 - > 任务管理器 -> 详细信息,根据PID排序找到PID为10728的进程,选择后点击结束任务。【1】关闭该进程的方法一:如果查找到了占用端口,可以通过PID,去任务管理器找到对应的进程,然后暴力地直接杀了这个进程。报错原因:这个错误表明端口1717已经被其他程序占用,导致我们的的Web服务器无法在这个端口上启动。找到对应的PID后,我们可以使用任务管理器来结束该进程,或者在CMD中使用。
2026-03-05 03:52:19
187
原创 【Python】网络爬虫——词云wordcloud详细教程,爬取豆瓣最新评论并生成各式词云
词云,即:对网络文本中出现频率较高的“关键词”予以视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要扫过一眼文本就可以领略文本的主旨。本项目用来爬取豆瓣网上最新的电影评论(以最新上映的:异形:夺命舰 Alien: Romulus为例),经过数据清理和词频统计后进行词云展示。
2026-03-04 07:47:25
196
原创 SQL 实战:复杂数据去重与唯一值提取
在实际开发中,数据重复是常见问题,例如用户多次登录记录、订单状态重复更新等。如何高效提取符合业务需求的唯一值或最新记录,对系统性能和数据准确性至关重要。本文将探讨如何使用 SQL 的以及 DISTINCT实现复杂场景下的数据去重与唯一值提取,避免重复数据干扰业务分析。函数/技术说明示例去除重复行,返回唯一记录按指定列分组,返回每组的聚合结果窗口函数,为每组记录编号,通常用于去重或排名类似,但排名相同记录具有相同序号连续排名,不跳跃。
2026-03-04 04:07:06
239
原创 Springboot3学习(5、Druid使用及配置)
启动项目,我们可以看到Springboot3自带的数据库连接池是HikariPool,HikariPool的主要优点是高性能,而我们即将集成的Druid数据库连接池,主要有点则是丰富的扩展以及优秀的监控性能。从学习的角度来讲,Druid相比较其他数据库连接池而言,更加的全面。我们新增application.yml,来配置druid相关配置,注释掉application.properties(ymlx相比于properties,更加的简洁和易读),配置如下。输入配置的账号密码,进入监控页面,如下图。
2026-03-04 00:18:21
246
原创 Nginx URL Rewrite:灵活的 URL 重写与重定向
它常用于静态资源的处理,例如检查文件是否存在,如果不存在,则重写请求到某个页面(通常是首页或错误页面)。Nginx 支持强大的正则表达式匹配功能,可以用来处理更复杂的 URL 重写需求。Nginx 的 **URL 重写(Rewrite)**功能允许你根据请求的 URL 动态地修改请求路径或进行重定向。当请求的文件或页面不存在时,你可能希望将请求重定向到一个自定义的 404 页面或者首页。:新的 URL,符合规则时,Nginx 会将请求的 URL 重写为这个目标。示例:当请求的文件不存在时,重定向到。
2026-03-03 00:00:41
265
原创 Linux部署Redis集群
Redis (REmote DIctionary Server) 是一个高性能的 key-value 数据库,完全开源,遵守 BSD 协议。Redis支持数据持久化,可以将内存中的数据保存在磁盘中,重启时可以再次加载进行使用。Redis不仅仅支持简单的key-value类型数据,同时还提供list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。
2026-03-02 07:51:35
658
原创 2024最新版Node.js下载安装及环境配置教程【保姆级】
选择对应你系统的Node.js版本,这里我选择的是Windows系统、64位(1)下载完成后,双击安装包,开始安装Node.js(2)直接点【Next】按钮,此处可根据个人需求修改安装路径,修改完毕后继续点击【Next】按钮(3)可根据自身需求进行,此处我选择默认安装,继续点击【Next】按钮(4)不选中,直接点击【Next】按钮(5)点击【Install】按钮进行安装(6)安装完毕,点击【Finish】按钮(7)测试安装是否成功,按下【win+R】键,输入cmd,打开cmd窗口。
2026-03-02 00:13:12
301
原创 mysql的主从配置
MySQL 主从又叫做 Replication、AB 复制。简单讲就是 A 和 B 两台机器做主从后,在 A 上写数据,另外一台 B 也会跟着写数据,两者数据实时同步的。MySQL 主从是基于 binlog 的,主上须开启 binlog 才能进行主从。主从过程大致有 3 个步骤:1)主将更改操作记录到 binlog 里2)从将主的 binlog 事件(sql 语句)同步到从本机上并记录在 relaylog里中继日志3)从根据 relaylog 里面的 sql 语句按顺序执行。
2026-02-27 21:48:56
330
原创 idea创建springBoot的五种方式
使用jar包创建就行,也是maven项目,jdk选1.8,但是下面的java没有8的,没关系,先选上,后面创建成功了再改。最后一种就是自己先创建一个普通的maven项目,然后自己手动搭建成一个springboot项目。点创建之后他会生成一个压缩包,然后解压,用idea打开就行了。其他选择跟第一种一样,不过这里jdk有8的版本了。也是下载成一个压缩包,然后解压,用idea打开。idea直接从spring.io官网下载。都选择好之后点获取代码,选下载就行。idea从阿里云官网下载。从spring官网上下载。
2026-02-15 02:57:44
346
原创 爬虫基础之爬取某基金网站+数据分析
声明: 本案例仅供学习参考使用,任何不法的活动均与本作者无关1.requests 2.re(内置) 3.pandas 4.pyecharts其他均需要 pip install 模块名。
2026-02-14 10:10:42
385
原创 海康威视摄像头RTSP使用nginx推流到服务器直播教程
使用网络摄像头中的rtsp协议---------通过rtsp链接让推流软件获取到视频流------推流软件推流到直播服务器-----直播服务器的搭建-----使用flv.js进行直播。1、配置centos的网络服务,让该虚拟机以局域网的形式链接到实验室的网络(网络上进行搜索,成功的标准是你的主机可以ping通你的虚拟机。这里有一个例子,有好多人说这个例子失效了,我上传到优快云后,居然需要VIP才能下载,我想了一下,要不就用百度网盘吧。这里的live的是你配置的rtmp的application的名字。
2026-02-14 10:03:08
820
原创 完美解决phpstudy安装后mysql无法启动
数据库无法启动有以下几个原因。**一、**自己在电脑上安装了MySQL数据库,MySQL的服务名为MySQL,这会与phpstudy的数据库的服务名发生冲突,从而造成phpstudy中的数据库无法启动,这时我们只需要将自己安装的MySQL的服务名改掉就行。但是!!!不建议,太麻烦了,还要重新装因为我还有在web开发,删了就导致原有数据丢失,太麻烦了。
2026-02-13 21:56:32
199
原创 如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
相比其他 Web 服务器,Nginx 的内存占用率非常低,可以在树莓派等资源受限的设备上运行。要注意的是,以上步骤使用的是随机临时地址,该公网地址24小时内会随机变化。打开浏览器,我们来测试一下访问配置成功的二级子域名,出现nginx欢迎界面表示成功,可以正常访问。然后打开在线隧道列表,查看创建隧道的公网地址,默认有两种访问方式,一种是http 另一种是https,复制http地址。,可以看到nginx隧道的公网地址,已经更新为二级子域名了,将公网地址复制下来。,找到需要配置二级子域名的隧道,点击右侧的。
2026-02-13 21:49:05
576
原创 从0到1部署Tomcat和添加servlet(IDEA2024最新版详细教程)
本文不仅细化了每一个步骤,实现了从0到1部署Tomcat和添加servlet。还针对IDEA2024版和以前的版本在部署上的区别,做了详细介绍,尤其是add framework support部分。与此同时,针对控制台中文乱码问题,本文也给出了详细解决方案。
2026-02-12 01:59:06
356
原创 一文读懂Ingress-Nginx以及实践攻略
Ingress是Kubernetes的 一种 API 对象,用于管理集群内服务的外部访问。Ingress 可以提供从集群外部到集群内Service的 HTTP 和 HTTPS 路由,并可以基于域名、路径等规则将请求转发到集群内的Service上。Ingress nginx是 Kubernetes 中最常用的 Ingress 控制器之一,由 NGINX 官方提供支持(备注:nginx和k8s官方各自维护了一套 nginx ingress controller是 NGINX 和 NGINX Plus 的。
2026-02-12 01:49:48
320
原创 【Redis】Redis各个版本的下载安装教程
7、将Redis的目录添加到Path路径中(添加之后,运行client-cli,不需要切换到解压目录下就可以直接打开客户端)6、注册服务(注册之后,启动服务,可以省略到第4步使用redis),同样以管理员身份打开cmd窗口,切换到解压的目录,运行。4、一管理员方式打开cmd窗口,进入到解压的目录下,运行。5、另外再开一个窗口,同样进入安装目录下,运行。(1)运行之前,服务列表中不包含Redis。(3)运行之后,服务列表包含Redis服务。
2026-02-11 02:29:51
462
原创 【Navicat+MySQL】 在Navicat内创建管理数据库、数据库表。
ENGINE = <存储引擎>:MySQL 支持多个存储引擎,可为不同表设定不同的存储引擎,使用是要用具体的存储引擎名称代替,如 ENGINE = InnoDB。这个语句可以用来从一个数据库“跳转”到另一个数据库,在用 CREATE DATABASE 语句创建了数据库以后,该数据库不会自动成为当前数据库,需要用 USE 语句来制定。数据库Bookstore中有一个表book,创建book表的一个名为book_copy2的副本,并复制其内容。-<列名>:表中列的名字,长度不能超过64字符。
2026-02-11 02:02:03
408
原创 Tomcat的server.xml配置详解
要开启Web应用的自动部署,需要配置所在的虚拟主机;但是,需要注意的是,在自动部署场景下(配置文件位于xmlBase中),不能指定path属性,path属性由配置文件的文件名、WAR文件的文件名或应用目录的名称自动推导出来。xmlBase属性指定Web应用的XML配置文件所在的目录,默认值为conf/<engine_name>/<host_name>,例如第一部分的例子中,主机localhost的xmlBase的默认值是$TOMCAT_HOME/conf/Catalina/localhost。
2026-02-10 02:35:18
283
原创 SQL注入(SQL Injection)攻击原理与防御措施
SQL是一种代码注入技术,可使攻击者修改应用程序向数据库提供的查询。迄今为止,最常见和最严重的应用 程序安全威胁总是隐藏在与数据库有某些连接的网络应用 程序中。通过这种 SQL 注入,攻击者可以绕过登录程序,获取、更改甚至更新数据库,执行管理程序,或进行其他变种操作。要解释什么 是 SQL 注入,就必须了解 SQL 的一些基本原理。事实上,它已成为处理和虚拟操作这些数据库的通用语言。它用于查询、插入、更新和删除数据库记录,几乎所有网络应用程序都使用它来访问数据库;
2026-02-10 02:07:24
238
原创 SpringBoot集成Prometheus
现在2.3.0.RELEASE和1.5.4.RELEASE版本的服务,都可以成功暴露出一个给Prometheus拉取指标的接口,只需要在Prometheus上进行配置即可在Prometheus WEB UI上看到效果。但生产环境的真实情况,不可能只收集一个服务的指标,是否再需要一个代理服务,该服务用来收集所有微服务的指标后,再统一暴露接口给Prometheus,需要再根据生产环境使用情况考虑。启动服务后,访问/actuator/prometheus接口,可以看到Micrometer替我们收集到的指标。
2026-02-09 22:54:11
513
原创 SpringBoot获取bean的几种方式
ApplicationObjectSupport类图入下,我们看到它实现了ApplicationContextAware接口,在Spring容器初始化过程中回调方法setApplicationContext来完成ApplicationContext的赋值。通过实现ApplicationContextAware接口,在Spring容器启动时将ApplicationContext注入进去,从而获取ApplicationContext对象,这种方法也是常见的获取Bean的一种方式,推荐使用。
2026-02-09 22:44:36
673
原创 Node.js npm 安装过程中 EBUSY 错误的分析与解决方案
综上所述,是一个较为常见的错误,特别是在 Windows 系统上,通常由文件被占用、资源竞争、权限不足等原因引起。解决这个错误的关键在于逐步排查,确保所有可能占用资源的进程得到妥善处理,必要时调整系统环境设置、权限以及工具本身的版本。确保所有相关文件未被其他程序占用。临时禁用防病毒软件,避免扫描干扰安装过程。更新 Node.js 和 npm 至最新版本,以避免已知的 bug。用管理员权限运行 npm 命令,确保权限足够。清理 npm 缓存,避免缓存损坏引发的问题。使用。
2026-02-08 04:06:17
343
原创 Spring boot创建时常用的依赖
1.springboot项目的总(父)依赖大全<parent></parent>当我们使用 spring 或 spring-boot 开发项目时,需要引入很多依赖,包括 spring 本身的组件、各种 spring-boot-starter、以及其它第三方依赖(如:slf4j、redis)。依赖多了,版本的选择是个问题,就怕哪个版本选择的不对导致出现一些意想不到的 BUG。spring-boot-dependencies的作用主要是起到约束版本的作用,在这个包里面声明了各种版本号,供子项目去引用。
2026-02-07 04:42:07
320
原创 Spring Boot 自动配置
Spring Boot 的自动配置:当 Spring 容器启动后,一些配置类、bean 对象等就自动存入 Ioc 容器中,而不再需要我们手动去声明,从而简化了程序开发过程,省去了繁琐的配置操作也就是说,Spring Boot 的自动配置,就是SpinrgBoot将依赖 jar 包中的配置类以及Bean加载到Spring Ioc 容器中的过程在本篇文章中,我们主要学习一下两个方面:1. Spring 如何将对象加载到 Spring Ioc 容器中2. SpringBoot 是如何进行实现的。
2026-02-07 04:17:08
326
原创 MySQL迁移到达梦:如何轻松、高质量完成迁移任务
由于业务需求要求数据库国产化,近期需要将数据从mysql数据库中迁移到达梦数据库中。本次使用达梦新的数据库开发和管理工具–SQLark百灵连接进行迁移,我也是在官方社区里看到大家推荐抱着试试看的心态去下载的。惊喜的是,五步即可快速搞定数据迁移,而且一次迁移成功率高达 90% 以上****,此外像导出评估报告、自动规划表空间等功能也十分实用!使用SQLark进行数据迁移的整体过程没有遇到问题,迁移成功率也很高。
2026-02-06 03:20:35
290
原创 MySQL的UPDATE(更新数据)详解
MySQL的UPDATE语句是数据库操作中不可或缺的一部分,通过合理使用索引、批量更新、避免全表更新、使用LIMIT以及优化事务,可以显著提高UPDATE语句的执行效率。
2026-02-06 03:10:38
299
原创 Linux安装redis
上传刚才下载的文件,或者使用wget命令下载,因为没有找到3.0.504所以下载了3.0.5。有的人会连接不成功,是因为发防火墙没有放开端口,这里有两种方法,关闭防火墙或者开放端口。想要测试是不是成功设置开机自启了,就执行命令,重启机器,然后进行连接测试。因为我一直使用的是redis3.0.504版本的,这里我就下载这个版本。开放完端口后需要重启防火墙才能生效。代表Kill(Stop)的顺序。是注册开机启动的运行级别。如果想断开连接,使用。有多个方式,比如使用。主要修改下面几个配置。代表Start的顺序。
2026-02-05 21:25:05
341
原创 java进阶1——JVM
Java 虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对 应平台上的机器码指令行,每一条 java 指令,java 虚拟机中都有详细定义,如怎么取操 作数,怎么处理操作数,处理结果放在哪儿。一次编译到处运行自动内存管理自动垃圾回收功能现在的 JVM 不仅可以执行 java 字节码文件,还可以执行其他语言编译后的字节码文件,是一 个跨语言平台.
2026-02-05 21:15:28
613
原创 对Docker部署的MySQL中的数据进行备份恢复
使用Docker部署的MySQL进行备份/恢复与传统方式类似,但需要考虑Docker容器的特殊性。以下是详细的步骤,帮助你在Docker环境中进行MySQL的全量备份。
2026-02-04 22:47:25
349
原创 关于Mysql 中 Row size too large (> 8126) 错误的解决和理解
提示:啰嗦一嘴 ,数据库的任何操作和验证前,一定要记得先备份!!!不会有错;
2026-02-04 21:40:07
664
原创 【MySQL】MySQL升级
例:/usr/local/mysql80/bin/mysqld --defaults-file=/data/3306/my.cnf --user=mysql &MySQL的版本更新很快,新版本中往往包含了很多新功能,并且解决了很多旧版本中的BUG,因此在很多情况下用户需要对数据库进行升级。,如果升级到一个比较新的版本,可能会在不知不觉中在你的环境中引入bug或引起性能问题,如果版本过旧,又会有一些旧版本中的BUG。mysql-shell工具,8.0以后,可以调用这个命令,升级之前的预检查。
2026-02-03 02:24:01
393
原创 【MySQL】MySQL函数之JSON_EXTRACT
在 MySQL 中,函数用于从 JSON 文档中提取一个或多个值。这个函数非常有用,特别是在处理存储在 JSON 格式中的复杂数据时。下面是一些关于如何使用的详细说明和示例。
2026-02-03 02:22:43
359
原创 使用Python实现高效数据分析与可视化实战详解
总效率 = 向量化占比(Numpy) × 内存优化系数(Pandas) × 视觉渲染速度(Plotly)`- Pandas:用于数据清洗、转换及预处理,通过`DataFrame`和`Series`结构高效操作大规模数据。pivot_df[环比增长率] = pivot_df.pct_change(axis=1).iloc[:, -1]fig = px.scatter(df, x=广告投入, y=用户增长量, color=地区,- 对无用中间变量及时`del`并调用`gc.collect()`强制垃圾回收。
2026-01-23 12:46:51
279
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅