自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Sql Server】随机查询一条表记录,并重重温回顾下存储过程的封装和使用

温故而知新,最近在写sql查询语句,需求是随机查询表的其中一条记录。基于这个查询,顺便把数据库自定义函数、存储过程这个两个知识点重温固定下。因此,本篇文章将在随机查询一条表记录的基础上,把sql语句封装到存储过程里。

2025-11-30 00:57:40 748

原创 Spring Boot 实战篇(四):实现用户登录与注册功能

在构建 Web 应用程序时,用户登录与注册功能是常见且重要的部分。以下将详细介绍在 Spring Boot 项目中实现用户登录与注册功能的步骤,并附上相应的代码示例。

2025-11-29 19:38:02 946

原创 MySQL数据库(SQL分类)

insert into employee values (3,‘3’,‘tong’,‘女’,20,123456789456723123,‘2025-05-06’),(4,‘4’,‘miaomiao’,‘女’,20,145456789456789123,‘2024-05-06’);1.delete语句的条件为可选项,如果没有,会删除表中的所有数据。数据控制语言,用来创建数据库用户,控制数据库的访问权限。数据定义语言,用来定义数据库对象(数据库,表,字段)数据操作语言,用来对数据库表中的数据进行增删改。

2025-11-29 17:00:09 534

原创 Golang 构建学习

Web开发虽然可以用多种不同的语言实现,但是基本的理论是一致的,比如鉴权,路由,数据库抽象,参数校验,mvc分层等等。第三个括号是输出参数的声明,注意这个没有向上面例子中提前声明返回值变量,需要在函数体中。函数如果是在模块内部,也就是同一个package目录下,则不同导入,直接调用就行。与以上雷同,区别在于返回值,如果两个相同类型的返回值,则可以采用省略的写法。引用传递: 函数中使用的是指向值的指针地址,通过函数修改传递的数据。值传递:函数中使用的是被复制的值,不影响外部数据。第二个括号是输入参数的声明。

2025-11-29 14:21:05 795 1

原创 窗口函数-详细讲解分析

窗口函数是一种SQL函数,非常适合于数据分析,其最大的特点就是:输入值是从SELECT语句的结果集中的一行或者多行的"窗口"中获取的,也可以理解为窗口有大有小(行数有多有少)。通过OVER子句,窗口函数与其他的SQL函数有所区别,如果函数具有OVER子句,则它是窗口函数。如果它缺少了OVER子句,则他就是个普通的聚合函数。窗口函数可以简单地解释为类似于聚合函数的计算函数,但是通过GROUP BY子句组合的常规聚合会隐去正在聚合的各个行,最终输出称为一行。

2025-11-29 03:58:10 223

原创 【前端】Node.js使用教程

Node.js是一个基于Chrome V8引擎的JavaScript运行环境,它让JavaScript运行在服务器端。

2025-11-29 01:25:26 280

原创 SQL Server Management Studio的使用

2.创建数据库:右键单击"数据库" --> 新建数据库:输入数据库名称,如Info,点击确定,如下图所示:可通过右键单击Info选择"属性"来修改数据库;(3).CHECK约束:限制表中列的值,确保数据的完整性和准确性。7.查询:右键单击数据库名Info,选择"新建查询",输入SQL语句,查询age>=20的所有内容,然后点击"执行",结果如下图所示。(2).删除列:单击表"dbo.student":右键单击要删除的列,然后选择"删除列",保存即可。(3).删除:选中要删除的行,右键单击:选择"删除"。

2025-11-28 22:50:34 335

原创 Spring Boot+Vue项目从零入手

1、创建Springboot项目,勾选Lombok(简化java代码的插件)、web——Spring Web(相当于SpringMVC)、sql——MyBatis Framework+MySql Driver。再配置tomcat的地方点+,选择npm,下方选择vue的package.json,下方run的下一格写serve。创建好项目后先启动,确认项目可以正常运行,再将vue整个拖入Springboot项目中。1.打开cmd窗口,进入准备建立vue项目的文件夹,通过。检测安装成功的方法:vue -V。

2025-11-28 20:03:07 347

原创 MySQL的底层原理与架构

了解MySQL的架构和原理对于很多的后续很多的操作会有很大的帮助与理解。并且很多知识都与底层架构相关联。

2025-11-28 17:27:04 240

原创 Golang 构建学习

Web开发虽然可以用多种不同的语言实现,但是基本的理论是一致的,比如鉴权,路由,数据库抽象,参数校验,mvc分层等等。第三个括号是输出参数的声明,注意这个没有向上面例子中提前声明返回值变量,需要在函数体中。函数如果是在模块内部,也就是同一个package目录下,则不同导入,直接调用就行。与以上雷同,区别在于返回值,如果两个相同类型的返回值,则可以采用省略的写法。引用传递: 函数中使用的是指向值的指针地址,通过函数修改传递的数据。值传递:函数中使用的是被复制的值,不影响外部数据。第二个括号是输入参数的声明。

2025-11-27 10:18:33 308

原创 【漏洞复现】CVE-2019-11043(PHP远程代码执行漏洞)信息安全论文_含漏洞复现完整过程_含Linux环境go语言编译环境安装

在PHP5.4版本之前,Nginx处理PHP的流程是调用php-fpm,php-fpm再创建进程,调用php-cgi,以此实现了Ngixn对PHP的解析问题,此时php-fpm起到的是管理php-cgi的作用。fast-cgi协议改进了进程的处理模式,当一次通信完成后,通信进程会得以保留,不会杀死通信使用的进程,其他的通信还可以继续使用这个进程,这样一来,就大大提升了系统资源使用效率。最后,信息安全是一个持续的过程,需要不断地学习和更新知识,跟踪最新的漏洞和攻击技术,并采取相应的防护措施。

2025-11-26 22:00:02 257

原创 【MySQL】MySQL用户管理

MySQL中的用户,都存储在系统数据库mysql的user表中。如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户。host: 表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆。这时,就需要使用MySQL的用户管理。关于新增用户这里,需要大家注意,不要轻易添加一个可以从任意地方登陆的user。2.*.*: 代表本系统中的所有数据库的所有对象(表,视图,存储过程等)3.库.* : 表示某个数据库中的所有数据对象(表,视图,存储过程等)刚创建的用户没有任何权限。

2025-11-26 20:50:50 303

原创 SQL中Limit的用法详解

LIMIT关键字是SQL中一个非常有用的工具,它可以用来限制查询结果返回的记录数量,实现数据的分页,或者从复杂查询中获取特定的记录。掌握LIMIT关键字的使用方法,可以让你更加高效地操作数据库。在实际应用中,需要注意LIMIT与查询结果集的相关性,以及常见错误用法和注意事项。

2025-11-26 19:41:14 214

原创 SpringBoot集成Netty实战:构建高效TCPUDP通信服务端【物联网开发必备】

您将掌握如何设计自定义的通信协议,包括数据包的结构和字段定义,以及如何确保数据的完整性和命令的明确性。

2025-11-26 18:29:47 249

原创 Spring 框架——@Retryable 注解与 @Recover 注解

(1)@Retryable注解用于实现方法的重试机制,通常用于处理暂时性的失败,确保在特定条件下自动重试方法调用。它常用于微服务和分布式系统中,特别是在处理网络请求或外部服务时。Class<?Class<?Class<?Class<?Class<?(2)@Retryablevalue:指定要重试的异常类型。可以是多个异常类型,例如。retryFor:另一个方式指定需要重试的异常类型。用法与 value 类似。include。

2025-11-26 17:19:41 230

原创 【解决】RESP.app GUI for Redis 连接不上redis服务器

可以使用 firewall-cmd --zone=public --list-ports 查询开放了哪些防火墙端口。会出现 6379/tcp ,此时再使用RESP GUI去连接redis就可以了。重启redis:systemctl restart redis.service。服务器端口号没有开放,或者使用宝塔,redis的6379端口号没设置。比如我的redis是使用6379端口。需要添加6379端口号在服务器安全组内添加和宝塔的安全设置中添加。ip正确,端口号也正确,redis服务也开启,但就是不成功。

2025-11-25 16:03:55 380

原创 【MySQL】数据类型

当表的编码是utf8时,varchar(n)的参数n最大值是65532/3=21844[因为utf8中,一个字符占用3个字节],如果编码是gbk,varchar(n)的参数n最大是65532/2=32766(因为gbk中,一个字符占用2字节)。如果定义的是float(4,2) unsigned ,因为把它指定为无符号的数,范围是 0 ~ 99.99。有了bit类型的值,只存放0或1,这时可以定义bit(1),可以节省空间。char(L): 固定长度字符串,L是可以存储的长度,单位为字符。

2025-11-25 14:52:45 239

原创 SQL实现md5加密方法

MD5(Message Digest Algorithm 5) 是一种广泛使用的哈希算法,它将输入的字符串(或数据)转换为固定长度的 128 位(16 字节)哈希值。不可逆性:MD5 是一种单向哈希算法,这意味着你无法从 MD5 哈希值还原出原始数据。输出固定长度:无论输入数据的长度如何,MD5 输出的哈希值始终是 32 个字符的十六进制数(128 位)。碰撞性。

2025-11-25 13:37:41 741

原创 Springboot项目中线程池使用整理

Spring环境:优先使用@Bean配置ThreadPoolTaskExecutor全局异步配置:实现AsyncConfigurer接口特殊性能要求:使用private static final方式。

2025-11-25 12:20:48 986

原创 Spring 循环依赖

三级缓存中的对象工厂可以确保在需要时创建代理对象,并将其放入二级缓存,从而确保代理对象可以在循环依赖中正确地被引用。时,它需要立即解析所有的构造函数参数,这会导致循环依赖问题。但从设计和架构的角度来看,尽量避免循环依赖是更好的做法。在需要时延迟创建早期引用,而不是立即创建。可能无法正确地创建代理对象,因为代理对象的创建依赖于完整的。的完全初始化的实例后,完成自身初始化,并放入一级缓存。注入或者字段注入,也可以解决循环依赖问题。的引用,所以最终拿到的是一个完整的。的初始化,从而解决循环依赖问题。

2025-11-25 11:00:51 294

原创 Redis的优势和特点

Remote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

2025-11-24 20:04:52 895

原创 Node.js npm 安装过程中 EBUSY 错误的分析与解决方案

综上所述,是一个较为常见的错误,特别是在 Windows 系统上,通常由文件被占用、资源竞争、权限不足等原因引起。解决这个错误的关键在于逐步排查,确保所有可能占用资源的进程得到妥善处理,必要时调整系统环境设置、权限以及工具本身的版本。确保所有相关文件未被其他程序占用。临时禁用防病毒软件,避免扫描干扰安装过程。更新 Node.js 和 npm 至最新版本,以避免已知的 bug。用管理员权限运行 npm 命令,确保权限足够。清理 npm 缓存,避免缓存损坏引发的问题。使用。

2025-11-24 18:43:55 902

原创 mysql占用内存过大问题排查

这个参数决定了 InnoDB 存储引擎缓冲池的大小,它会占用大量内存。#如果数据库中有非常大的表,可能会占用大量内存,过多或不合理的索引也可能导致内存占用增加。如果有长时间运行的复杂查询或者大量未优化的查询,可能会占用大量内存。通过以上步骤的排查,可以找出 MySQL 占用内存过高的原因,并采取相应的措施进行优化。

2025-11-24 14:46:06 632

原创 MS SQL Server partition by 函数实战三 成绩排名

关键语句:row_number() over (partition by zwmc order by kszcj desc,kscj1 desc,kscj2 desc),按 zwmc (职位名称)分区,以kszcj(考试总成绩) 降序排列,第二排序以kscj1(分项考试成绩1) 降序排列,,第三排序以kscj2(分项考试成绩2) 降序排列,row_number() 函数起到了总排序功能。现希望根据总成绩计算排名,成绩越高排名越靠前,相同成绩排名并列,另外有并列则按总数递增,如两个第1后是第3。

2025-11-24 13:35:48 901

原创 go桌面框架Fyne最全api文档

Fyne是一个 Go 语言的跨平台 GUI 库。

2025-11-24 12:17:57 865

原创 redis安装与部署

将下载好的 redis-6.2.7.tar.gz 安装包上传到虚拟机的任意目录(一般推荐上传到 /usr/local/src目录)。如果是前台启动的话,如果关闭当前会话,则Redis服务也随即关闭,因此这种方式不推荐使用。redis-sentinel:它是 redis 提供的哨兵启动脚本。redis-check-dump:修复有问题的dump.rdb文件。redis-server:它是 redis 的服务端启动脚本。redis-cli:它是 redis 提供的客户端启动脚本。如果没有出错,就会安装成功。

2025-11-23 05:28:43 384

原创 Nginx的下载安装配置文件解析

【代码】Nginx的下载安装配置文件解析。

2025-11-23 04:18:32 220

原创 mysql之日期时间函数

以下是 MySQL 中一些常用的日期和时间函数,包括它们的用法、参数类型和期望的结果。

2025-11-23 03:08:17 181

原创 macOS安装Redis

本指南告诉你如何使用Homebrew在macOS上安装Redis。Homebrew 是在 macOS 上安装 Redis 的最简单方法。首先,确保你已经安装了Homebrew。在终端上,运行如果你这个命令失败了,你就需要安装Homebrew。

2025-11-23 01:58:59 176

原创 Golang 构建学习

Web开发虽然可以用多种不同的语言实现,但是基本的理论是一致的,比如鉴权,路由,数据库抽象,参数校验,mvc分层等等。第三个括号是输出参数的声明,注意这个没有向上面例子中提前声明返回值变量,需要在函数体中。函数如果是在模块内部,也就是同一个package目录下,则不同导入,直接调用就行。与以上雷同,区别在于返回值,如果两个相同类型的返回值,则可以采用省略的写法。引用传递: 函数中使用的是指向值的指针地址,通过函数修改传递的数据。值传递:函数中使用的是被复制的值,不影响外部数据。第二个括号是输入参数的声明。

2025-11-23 00:43:52 539

原创 redis存取list集合

java 用redisTemplate 的 Operations存取list集合。p1.setName(“张一”);p2.setName(“张二”);p3.setName(“张三”);

2025-11-21 14:43:23 709

原创 Nginx环境安装

双击nginx目录下的nginx.exe应用程序,一般情况下,会有一个黑色的弹窗一闪而过,这就代表启动成功了。直接输入 nginx 或者 start nginx,然后回车,就可以启动nginx了。Nginx的配置文件是在conf目录下的nginx.conf文件。Nginx默认端口是80,可通过配置文件查看,(最好修改一下)#1查看Nginx安装路径whereis nginx。在nginx安装目录的绝对路径的框框内输入 cmd。关闭nginx的命令:nginx -s stop。# 启动Nginx服务。

2025-11-21 13:33:09 251

原创 mysql之日期时间函数

以下是 MySQL 中一些常用的日期和时间函数,包括它们的用法、参数类型和期望的结果。

2025-11-21 12:23:34 144

原创 macOS安装Redis

本指南告诉你如何使用Homebrew在macOS上安装Redis。Homebrew 是在 macOS 上安装 Redis 的最简单方法。首先,确保你已经安装了Homebrew。在终端上,运行如果你这个命令失败了,你就需要安装Homebrew。

2025-11-21 11:14:22 306

原创 Golang 构建学习

Web开发虽然可以用多种不同的语言实现,但是基本的理论是一致的,比如鉴权,路由,数据库抽象,参数校验,mvc分层等等。第三个括号是输出参数的声明,注意这个没有向上面例子中提前声明返回值变量,需要在函数体中。函数如果是在模块内部,也就是同一个package目录下,则不同导入,直接调用就行。与以上雷同,区别在于返回值,如果两个相同类型的返回值,则可以采用省略的写法。引用传递: 函数中使用的是指向值的指针地址,通过函数修改传递的数据。值传递:函数中使用的是被复制的值,不影响外部数据。第二个括号是输入参数的声明。

2025-11-21 10:05:07 274

原创 MySQL超详细安装配置教程(亲测有效)

目录1.下载mysql?2.环境配置3.安装mysql?4.navicat工具下载与连接?5总结mysql下载–MySQL :: 下载 MySQL 社区服务器下载的时候这里直接逃过就行我这里的版本是最新的mysql8.0.37下载完成之后,将压缩包进行解压这里我建议大家把自己的mysql放到D盘根目录下,防止后面出现问题,自己找的时候也方便(我就踩过这个坑)打开电脑系统环境变量在系统变量中找到Path,点击进入编辑加上自己mysql中bin文件夹的路径然后确定退出即可编辑创建好的my.ini文件,用于初始化

2025-11-20 11:38:27 774

原创 mysql中主键索引和联合索引的原理解析

联合索引:将数据库表中多个字段组成一个索引。bcd联合索引;bcd三个字段进行排序复合索引,也叫联合索引,用户可以在多个列上建立索引,这种索引叫做复合索引。当我们创建一个组合索引的时候,如(k1,k2,k3),相当于创建了(k1)、(k1,k2)和(k1,k2,k3)三个索引,这就是最左匹配原则。查询的字段正好在联合索引字段里面,不需要回表(不需要回表了,直接从联合索引字段中将该字段取出来)同样的也符合联合索引,也不需要回表,因为a字段(主键)在联合索引中。

2025-11-20 10:56:08 626

原创 Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错

是MySQL的一个SQL模式(SQL_MODE)之一,它要求在使用GROUP BY语句时,SELECT列表、HAVING条件或ORDER BY列表中的每个列,要么是聚合函数的一部分(如COUNT()SUM()AVG()等),要么必须在GROUP BY子句中明确指定。这一模式的设计初衷是增强查询的准确性和可预测性,避免因为列的不明确引用而导致的数据错误或不一致。

2025-11-20 10:13:29 586

原创 Java进阶知识-反射

而mMainThread对象是ActivityThread类型,该类是我们的主线程类,里面有有一个mInstrumentation成员变量,该成员变量属于Instrumentation类型。应用中所有的Activity都继承自一个BaseActivity基类,基类中实现一个startActivity方法,在该方法之前加上一句打印,那么所有startActivity的地方都调用基类中的方法。通过反射,可以获取某个类中的所有方法,包括private,public,protect类型的方法。

2025-11-20 09:30:43 712

原创 Golang 构建学习

Web开发虽然可以用多种不同的语言实现,但是基本的理论是一致的,比如鉴权,路由,数据库抽象,参数校验,mvc分层等等。第三个括号是输出参数的声明,注意这个没有向上面例子中提前声明返回值变量,需要在函数体中。函数如果是在模块内部,也就是同一个package目录下,则不同导入,直接调用就行。与以上雷同,区别在于返回值,如果两个相同类型的返回值,则可以采用省略的写法。引用传递: 函数中使用的是指向值的指针地址,通过函数修改传递的数据。值传递:函数中使用的是被复制的值,不影响外部数据。第二个括号是输入参数的声明。

2025-11-19 20:13:14 657

空空如也

空空如也

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

TA关注的人

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