自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 redis7 for windows的安装教程

Redis(Remote Dictionary Server)是一个开源的,基于内存的数据结构存储系统,可用作数据库、缓存和消息代理。它支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等,并提供了对这些数据结构的各种操作。高性能:Redis将数据存储在内存中,因此读写速度非常快,每秒可以处理超过10万个请求。持久化:Redis支持数据的持久化,可以将内存中的数据保存到磁盘上,重启后可以恢复数据。复制:Redis支持主从复制,可以将多个Redis实例组成主从架构,提高可用性和扩展性。

2026-03-23 10:54:40 206

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

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

2026-03-23 03:00:15 286

原创 开放自己本机的mysql允许别人连接

需要在左下角搜索记事本应用,右键以管理员身份运行,之后按照上述地址找到my.ini文件,ctrl+F搜索到[mysqld],修改或添加 bind-address 设置,将其更改为 0.0.0.0 或你的计算机的 IP 地址。打开 MySQL 的配置文件 my.ini。username和密码是第3步创建能从远程地址访问的用户和密码,ip地址是ipconfig查看的地址(前提是能ping通,才能连接该地址对应的数据库)。使用 MySQL 命令行连接到自己的数据库,并创建一个能够从远程地址访问的用户。

2026-03-22 12:37:14 195

原创 在21世纪的我用C语言探寻世界本质——字符函数和字符串函数(2)

(9)现在我们就来看进行一次匹配的过程,也很简单,我们还是创建一个while循环,如果s1和s2解引用不是 ,并且解引用后相等,那我们就让s1和s2加加,一直往后走,当循环结束时,我们就判断s2解引用后是否是 ,如果是说明完全匹配上了,就返回cp,不是那么说明没有完全匹配,就让cp++,开始下一次循环查找。而不带n的字符串函数和带n的字符串函数的根本区别是带n的字符串函数更灵活,可以指定拷贝的字符的个数,所以也叫带n的字符串函数为受限制的字符串函数,不带n的为不受限制的字符串函数。

2026-03-22 11:56:40 299

原创 使用Django Rest Framework构建API

在本指南中,我们深入探讨了使用Django Rest Framework (DRF) 构建Web API的五个关键步骤:环境设置、数据序列化、视图与路由配置、安全性和权限设置、以及测试和文档生成。每一步都是构建强大、安全且易于维护的API的关键组成部分。环境设置确保了您的项目有正确的基础架构。数据序列化是处理数据输入输出的核心,关系到数据的标准化和国际化。视图与路由配置定义了API的行为和URL结构,直接影响到API的用户友好度和可扩展性。安全性和权限。

2026-03-22 11:15:43 355

原创 SQL自学:怎么创建视图

具体来说,选择了“customers”表中的“customer_name”(客户姓名)和“city”(客户所在城市),同时通过对“orders”表中的“order_id”进行计数(使用“COUNT(o.order_id)”并别名为“total_orders”)得到每个客户的订单总数,以及对“orders”表中的“total_amount”进行求和(使用“SUM(o.total_amount)”并别名为“total_amount”)得到每个客户的总金额。这个视图是基于名为“employees”的表创建的。

2026-03-22 03:45:52 257

原创 mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)

当想在在(window+R输入cmd按Enter)命令提示符,打开MySQL运行时,出现‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件可能是没有配置mysql配置环境变量或者配置路径有错误。

2026-03-22 00:33:44 202

原创 IPV6公网暴露下的OPENWRT防火墙安全设置(只允许访问局域网中指定服务器指定端口其余拒绝)

则只需要匹配最后一段)**如何选择主机号后缀?**在查询出的多个地址中必须选择你DDNS做同步的那个ipv6地址的后缀。注意!你的IPV6必须为EUI64生成这样主机位不会变动。如果是stable-privacy生成则会每次生成不同的后缀,虽然有利于安全性,但是并不适用于防火墙规则编写。可以按照以下教程修改。如果你不想修改,每次的地址都完全随机难以匹配,因此目的地址栏只能空着,仅依靠目标端口实现限制。(指定主机:端口 变为 所有主机:端口)

2026-03-21 01:52:48 222

原创 IoT DC3 是一个基于 Spring Cloud 的开源的、分布式的物联网(IoT)平台本地部署步骤

## 启动 Auth、Manager、Data、Gateway 服务 [进入原网页#](https://doc.dc3.site/docs/code/3-idea-start.html#%E5%90%AF%E5%8A%A8-auth%E3%80%81manager%E3%80%81data%E3%80%81gateway-%E6%9C%8D%E5%8A%A1)[输入图片说明](/imgs/2023-08-23/RwCzXsbq9cGTMIjv.png)

2026-03-21 01:52:05 176

原创 InvalidConfigDataPropertyException Property ‘spring.profiles.active‘ imported from...SpringBoot

错误原因,SpringBoot版本所致,配置语法有变化。

2026-03-21 01:51:24 167

原创 index.php 和 php

index.php是一个常见的文件名,在许多基于 PHP 的 web 应用程序中用作默认的入口文件。它通常被用来处理用户请求、加载必要的资源、执行逻辑并最终返回 HTML 内容给浏览器。在 Web 服务器(如 Apache 或 Nginx)上,配置通常会将index.php设为默认文件,当用户访问某个目录时,如果该目录下存在index.php,服务器会自动加载这个文件。例如,当用户在浏览器中输入时,实际加载的可能是。index.php。

2026-03-21 01:50:48 206

原创 IEEE 1588:电信网络的精确时间协议 (PTP)

PTP 是一种基于网络的时间同步协议,但PTP网络并非追求毫秒级同步,而是力求实现纳秒甚至皮秒级同步。同步对于电信网络节点而言至关重要,节点可以处于自由运行、频率锁定、相位锁定、保持等状态,如下图所示。

2026-03-21 01:50:12 208

原创 MySQL Join 的原理与优化实践

算法适用场景优点缺点内层表有索引查询高效,减少内层扫描行数依赖索引,外层表仍需扫描所有行无索引,小数据量简单实现,适合小型数据集内层表全表扫描,效率较低无索引,大数据量缓冲区减少扫描次数依赖内存大小,耗内存场景Join 是否必要推荐方案汇总查询(无关联需求)不必要使用单表查询或子查询优化,避免多余 Join。多表关联查询必要若数据量较大,优先使用子查询减少扫描行数;若数据量小,直接 Join 效率更高。

2026-03-18 03:09:58 205

原创 ERROR 1524 (HY000) Plugin ‘mysql_native_password‘ is not loaded

你遇到的错误是由于 MySQL 版本不再默认支持认证插件导致的。从 MySQL 8.0 开始,默认的认证插件是,而不是。

2026-03-18 00:45:16 220

原创 Spring总结(上)

1. 使用构造函数2. 使用静态工厂3. 使用实例化工厂Bean对象类:1.对象注入PersonDaoBean对象类:PersonServiceBean对象类:方法一:方法二:注意:方法一中的一个dao对象可被多个service bean对象使用,但方法二却只能使用一次2.基本类型注入3.集合类型的装配Spring容器注入的配置:测试:通过构造器传入参数注入值:配置如下:

2026-03-17 17:44:20 34

原创 Springboot 3项目整合Knife4j接口文档(接口分组详细教程)

springboot 3开始javax包改成了jakarta,而swagger-oas等包中依然使用的是javax,所以报错。另外springfox已经停止更新有段时间了,并且不支持OpenAPI 3标准,升级Springboot 3.0以后会有更多问题暴露出来。而SpringBoot 3只支持OpenAPI 3规范,因此Spring官网推荐了Springdocspringfox 3.0.0: 同时兼容OpenAPI 2以及OpenAPI 3,但是停更很久了。

2026-03-17 15:29:13 336

原创 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 提供的客户端启动脚本。如果没有出错,就会安装成功。

2026-03-17 13:01:30 221

原创 MySQL 的mysql_secure_installation安全脚本执行过程介绍

1.设置 MySQL root 用户密码。2.删除匿名用户。3.禁止 root 用户远程登录。4.删除测试数据库。5.重新加载权限表。

2026-03-17 03:44:13 172

原创 Flask-SocketIO,一个高效的 Python WebSocket 库!

是一个基于Flask框架的扩展库,专门用于实现实时通讯。传统的HTTP协议是“请求-响应”模式,服务器只能在客户端请求后进行响应,而WebSocket可以让服务器主动推送数据给客户端,实现双向实时通信。Flask-SocketIO不仅支持WebSocket,还支持长轮询等多种通信方式,它会自动选择最佳方式,不用我们手动配置。除了message,我们可以定义更多自定义事件,帮助实现更细化的实时功能。例如,可以定义一个事件专门用于发送通知。def?????data)????data,?:发送通知事件。

2026-03-17 01:05:24 204

原创 如何使用 SQL CREATE TABLE 创建一个表

在使用语句时,需要为每个列指定适当的数据类型。约束条件用于限制表中数据的取值范围和完整性。约束条件可以保证数据的完整性和一致性,但过多或不合理的约束条件可能会影响数据的插入和更新性能。在定义约束条件时,要考虑实际业务需求和数据的特点。使用 SQL语句可以轻松地创建数据库表。在创建表时,需要选择合适的数据类型、定义合理的约束条件,并考虑表的扩展性和命名规范。通过实际案例的演示,我们可以更好地理解如何使用语句创建一个满足实际需求的表。掌握这些知识,将有助于我们更好地管理和操作数据库。

2026-03-15 12:34:28 334

原创 使用mysql报Communications link failure异常解决

线上使用polarDB,基于mysql(5.7),架构为springboot+mybatisplus+durid连接池,部分业务场景涉及大表更新和查询操作,在查询慢sql且超过一定时间时就会报出"Communications link failure"异常,主要体现在界面查询或定时任务处理大批量数据是执行数据库的更新、查询异常。问题得不到解决,业务层对索引优化和强制索引等都进行了处理,部分数据迁移到ES/IOTDB,但根本问题在于MYSQL中依旧存在不可避免的大表慢sql,导致该问题依旧存在。

2026-03-15 11:25:54 173

原创 【SqlServer】SQL Server Management Studio (SSMS) 下载、安装、配置使用及卸载——保姆级教程

通过以上教程,你可以完成 SQL Server Management Studio (SSMS) 的下载、安装、数据库连接及卸载操作。希望对你有所帮助,若有问题欢迎指正~??

2026-03-15 10:17:15 546

原创 【springboot】Spring 官方抛弃了 Java 8!新idea如何创建java8项目

去网上搜了一圈,原来这是因为 Spring Boot 官方不再支持 Spring Boot 的 2.x 版本了,之后全力维护 3.x;那就是不要用官方提供的 Spring Initializr 来初始化项目了,我们可以使用阿里云提供的脚手架镜像(https://start.aliyun.com/),一样愉快地使用 Java 8~具体一点,应该是使用 IDEA 内置的 Spring Initializr 创建 Spring Boot 新项目时,没有 Java 8 的选项了,只剩下了 >= 17 的版本。

2026-03-15 05:02:58 80

原创 SQL注入(SQL Injection)攻击原理与防御措施

SQL是一种代码注入技术,可使攻击者修改应用程序向数据库提供的查询。迄今为止,最常见和最严重的应用 程序安全威胁总是隐藏在与数据库有某些连接的网络应用 程序中。通过这种 SQL 注入,攻击者可以绕过登录程序,获取、更改甚至更新数据库,执行管理程序,或进行其他变种操作。要解释什么 是 SQL 注入,就必须了解 SQL 的一些基本原理。事实上,它已成为处理和虚拟操作这些数据库的通用语言。它用于查询、插入、更新和删除数据库记录,几乎所有网络应用程序都使用它来访问数据库;

2026-03-15 02:31:58 374

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

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

2026-03-14 10:08:02 51

原创 MySQL数据库报错:ERROR 2002 (HY000) Can‘t connect to local MySQL server through socket

在安装或配置MySQL数据库时,是一个常见的错误,这可能会阻碍数据库的正常使用。本文将深入探讨这个错误的原因、诊断方法以及详细的解决步骤,帮助你快速恢复MySQL数据库的正常运行。

2026-03-14 02:47:42 155

原创 MySQL 批量删除海量数据的几种方法

可以将批量删除逻辑封装成存储过程,利用存储过程自动控制批量删除过程。方法适用场景优点缺点LIMIT分批删除需要简单分批删除逻辑简单,减少锁表时间需循环操作主键范围分批删除有连续主键的表高效,无偏移开销需手动指定范围自定义批量删除存储过程小批量删除自动化操作需要数据库支持存储过程临时表替换删除数据量非常大避免锁表,减少日志开销需要额外磁盘空间根据不同的业务场景和需求,选择合适的批量删除方式可以提高 MySQL 的删除效率,减少对数据库的影响。

2026-03-14 01:33:00 230

原创 Java进阶知识-反射

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

2026-03-14 00:17:53 216

原创 Java进阶10 IO流

FileReader字符输入流读取纯文本文件时,解决中文乱码问题,就是因为其底层还是有字节数组,如果读取到负数表示的字节数,系统就知道遇到了中文,会一次性拿出三个进行解码。2000年3月17日发布,收录21003个汉字,包含国家标准GB13000-1中的全部中日韩汉字,和BIG5编码中的所有汉字,**注意事项:**关联的文件不存在会抛出FileNotFoundException异常,文件夹的话会拒绝访问。正真和文件建立关联的,还是普通的流对象。将读取到字节,放到传入的数组,返回读取到的有效字节个数。

2026-03-14 00:05:02 385

原创 docker compose安装redis

在上一步创建的redis配置文件目录(/data/redis6.2.14/conf)下,创建redis.conf配置文件,启动时,会将这个配置文件挂载到容器中。下载到本地,打开压缩包,将如下的配置文件拷贝到出来,放到部署服务器创建的配置文件目录里面。连接测试有两种方式,第一种:直接用外部的工具进行连接。第二种,进入容器内部,通过redis自带的客户端进行连接。进入docker内部,通过redis自带的redis-cli工具进行验证。执行完以上,两个命令,即可通过ll查看目录,已经存在。redis启动成功。

2026-03-13 22:50:39 328

原创 时代变了,对比完Rust,发现Java差一大截!

Rust:适合需要高性能和内存安全的低级系统编程和高并发应用,Rust 的所有权和借用系统提供了在编译时检测错误的能力,使得程序运行更加健壮和安全。Rust 对于性能有极高要求的场景,尤其是嵌入式开发、系统级开发和高性能计算,非常适合选择 Rust 进行开发。Java:是面向对象的开发语言,拥有丰富众多的第三方库、稳定的企业环境支持,强大的开发工具链和框架支持,使其成为主流的应用程序开发语言之一。

2026-03-13 02:29:13 188

原创 使用 MySQL 从 JSON 字符串提取数据

通过上述 SQL 查询,我们成功地从一个包含 JSON 字符串的字段中提取了数据并转换成了另一种结构化格式。这种方法展示了 MySQL 在处理 JSON 数据方面的灵活性和强大能力。在实际应用中,您可以根据具体的需求对查询进行适当的修改,以适应不同结构的 JSON 数据。此外,了解 SQL 中字符串处理和聚合函数的使用,对于提升数据处理的能力和效率至关重要。希望本篇文章对您在处理 JSON 数据时有所帮助!

2026-03-12 12:26:23 223

原创 【MySQL】CAST()在MySQL中的用法以及其他常用的数据类型转换函数

这在处理不同类型的数据时非常有用,比如将字符串转换为数字,或者将浮点数转换为整数等。函数在数据处理和转换中非常有用,尤其是在数据导入和报告生成时,可以确保数据类型的正确性和一致性。可以用于将字符串转换为日期时间,或者在转换时指定不同的字符集。: 返回参数的符号,-1 表示负数,0 表示零,1 表示正数。这些函数可以在不同的场景下使用,以实现数据类型的转换和处理。类似,但语法略有不同,并且可以用于转换为不同的数据类型。指定了小数点前的位数为 10,小数点后的位数为 2。: 将整数转换为二进制字符串。

2026-03-12 10:02:57 190

原创 SpringCloud 系列教程:微服务的未来(二)Mybatis-Plus的条件构造器、自定义SQL、Service接口基本用法

在现代 Java 开发中,(简称 MP)作为 MyBatis 的增强工具,已经成为了开发者提高开发效率的利器。它通过简化 MyBatis 的操作,提供了多种便捷的功能,如自动生成 SQL、内置条件构造器、分页查询等。与 MyBatis 相比,MyBatis-Plus 更加简洁和高效,尤其适用于快速开发场景。本篇博客将深入探讨条件构造器自定义 SQL和Service 接口的基本用法。通过对这些功能的学习和掌握,开发者能够更加高效地使用 MyBatis-Plus 进行业务开发。

2026-03-11 23:25:22 299

原创 Spring Cloud gateway 路由规则

匹配 /api/user/ 下的所有子路径,包括多级子路径,例如 /api/user/profile 和 /api/user/orders/123。作用:定义一组断言,用于决定请求是否匹配该路由。作用:定义一组过滤器,用于在请求转发前后对请求或响应进行修改。匹配 /api/user/ 后跟一个或多个数字的路径,例如 /api/user/123。匹配 /api/user/ 下的一级子路径,例如 /api/user/profile。匹配请求路径为 /api/user 的请求。

2026-03-11 21:01:20 247

原创 MySQL的底层原理与架构

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

2026-03-10 08:44:24 156

原创 Linux部署Redis集群

Redis (REmote DIctionary Server) 是一个高性能的 key-value 数据库,完全开源,遵守 BSD 协议。Redis支持数据持久化,可以将内存中的数据保存在磁盘中,重启时可以再次加载进行使用。Redis不仅仅支持简单的key-value类型数据,同时还提供list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。

2026-03-10 04:47:08 370

原创 超详细:数据库的基本架构

负责跟客户端建立连接、获取权限、维持和管理连接。每个客户端连接到MySQL时,都会创建一个对应的连接器。连接命令中的mysql是客户端工具,用来跟服务端建立连接。连接服务包含本地socket通信和基于客户端/服务端工具实现的类似TCP/IP的通信。主要完成一些类似于连接处理、授权认证及相关的安全方案。

2026-03-09 08:08:04 361

原创 基于Spring Boot 3 + Spring Security6 + JWT + Redis实现登录、token身份认证

基于Spring Boot3实现Spring Security6 + JWT + Redis实现登录、token身份认证。系列文章指路??项目源码??

2026-03-09 04:08:46 213

原创 【SpringBoot】日志文件

在我们学习语法阶段时,当满足某一个条件时,我们通常会使用sout即来输出一句话来作为日志。如执行了某某方法或满足某某条件。System.out.println("执行了某某方法");而在SpringBoot中,我们有了更为高级日志文件。当我们执行SpringBoot项目时,控制台输出的就是一些默认的日志。记录了某个程序的执行时间、执行的日志级别(是否正常)以及线程名等等。如下图所示。因此,当你的程序出现错误的时候,你能通过类似上述的日志来精确的查找错误并进行修改。

2026-03-08 13:43:49 346

空空如也

空空如也

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

TA关注的人

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