自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 gin框架---文件上传

本文介绍了使用Gin框架处理文件上传和下载的方法。文件上传部分包括单文件上传、多文件上传以及服务端保存文件的三种方式(SaveUploadedFile、Create+Copy和直接读取文件内容)。文件下载部分介绍了直接响应文件、设置响应头使浏览器下载文件,以及前后端分离模式下的文件下载实现方式,并提供了前端对应的JavaScript下载代码示例。文中还提到了文件下载可能遇到的浏览器缓存问题及解决方案。

2026-05-03 19:40:00 50

原创 四大请求方式

本文介绍了RESTful风格的基本概念及其在Go语言中的实现。RESTful不是标准或协议,而是一种资源操作风格,主要包括:GET(获取资源)、POST(新建资源)、PUT(更新完整资源)、PATCH(更新部分资源)和DELETE(删除资源)。文章通过一个Go示例展示了如何使用Gin框架实现RESTful API,包括获取文章列表、获取文章详情、创建、更新和删除文章等操作。代码演示了如何处理JSON数据、路由参数以及不同HTTP方法对应的资源操作逻辑,体现了RESTful风格的核心思想。

2026-05-03 10:21:51 190

原创 全面解析 Token:从入门到 JWT 实战

本文全面解析了Token在现代Web开发中的应用,重点介绍了JWT的实现方式。文章首先对比了传统Session验证与Token验证的区别,指出Token的无状态、分布式友好等优势。详细讲解了JWT的三部分结构(Header、Payload、Signature)及其工作原理,并提供了Go语言中JWT的实战代码示例。

2026-05-02 15:47:41 490

原创 Gin + WebSocket 连接池

本文介绍了在Gin框架中实现WebSocket连接池的核心方法。

2026-04-19 15:51:07 228

原创 Redlock(红锁)--看这篇就够了

Redlock是Redis作者提出的分布式锁算法,通过部署多个独立Redis节点(通常5个)并使用多数派原则来提升锁的安全性。

2026-04-11 09:15:46 403

原创 Redis分布式锁讲解

本文介绍了分布式锁的概念、特点、实现方式及常见问题解决方案。

2026-04-04 09:55:50 384

原创 Gin框架---框架CORS

跨域资源共享(CORS)与Gin框架实现 跨域问题源于浏览器的同源策略,当协议、域名或端口不同时就会产生跨域限制。实际开发中前后端分离架构常需要跨域通信。

2026-03-28 09:22:42 386

原创 AJAX 请求理解

AJAX是一种异步JavaScript和XML技术,允许在不刷新页面的情况下与服务器进行数据交互。

2026-03-21 10:54:56 431

原创 RESTful 基础:资源、路径与方法对应关系详解

RESTful API设计核心在于资源、路径与HTTP方法的对应关系。

2026-03-14 08:31:17 323

原创 HTTP和HTTPS理解

本文系统介绍了HTTP协议的核心原理及HTTPS的区别。HTTP是客户端与服务器间的通信协议,采用明文传输、无状态设计,包含请求行、请求头、空行和请求体四部分结构。HTTPS则是HTTP+SSL/TLS加密组合,通过443端口传输加密数据,需CA证书验证。关键区别在于HTTPS增加了加密层和证书验证,但性能开销略大。建立连接时,HTTP只需TCP三次握手,而HTTPS还需完成SSL/TLS握手协商会话密钥。HTTPS适用于支付等敏感场景,HTTP更适合普通数据传输。

2026-02-27 10:16:47 665

原创 摆动序列(贪心算法)

摆动点:当前元素与前一个元素的差值符号,和前一个差值的符号相反且非 0,则当前元素是一个摆动点;初始状态:数组第一个元素默认是 “起点”,计数为 1;遍历过程:只关注 “差值符号变化”,忽略连续相同符号的差值(包括差值为 0),因为这些元素对最长摆动序列无贡献。纯贪心算法解决摆动序列问题的核心是统计有效摆动点:只保留差值符号变化的元素,跳过同方向 / 相同元素;关键判断条件:当前差值非 0,且与前一个有效差值符号相反;时间复杂度 O (n)、空间复杂度 O (1),是最优解法之一;

2026-02-07 08:54:17 637 1

原创 Git的入门,看这篇就够了

本文介绍了Git版本控制的基本概念和常用操作。

2026-01-31 08:24:41 674

原创 Redis复盘总结

Redis是一款高性能开源内存数据库,支持丰富的数据类型(字符串、哈希、列表等)和原子性操作。

2026-01-24 11:12:36 687

原创 复原 IP 地址(回溯算法)

复原 IP 地址是回溯算法的经典应用,核心是通过试探 - 验证 - 回退枚举所有有效分段组合。解题的关键是明确 IP 分段的有效性约束(范围 0-255、无前导 0)、回溯的终止条件和回退操作。的高效增删和合理的剪枝操作(提前跳出无效循环)是提升算法性能的重要手段。回溯算法的核心是状态恢复,任何一次试探后的状态变更,在递归返回后都必须回退,否则会影响后续路径的尝试。掌握本题的回溯思想后,还可以将其迁移到其他字符串分割类问题(如分割回文串),触类旁通,提升算法解题能力。

2025-12-28 17:15:46 1047

原创 go-redis的知识点--学习笔记

Go-Redis 使用指南摘要 本文介绍了Go语言中使用go-redis库操作Redis的基本方法。

2025-12-20 11:07:23 742 3

原创 Redis哨兵模式(Linux)

Redis哨兵模式是官方推荐的高可用解决方案,通过监控主从节点实现自动故障转移。文章详细介绍了主从复制配置方法,包括从节点设置和验证步骤。演示了哨兵节点配置和故障转移过程,当主节点宕机时能自动选举新主节点。

2025-12-06 17:55:50 779

原创 Go连接Mysql数据库

本文介绍了Go语言连接MySQL数据库的基本方法

2025-11-29 14:14:53 238

原创 深入理解Go语言内存分配

本文将从架构设计、核心机制、分配流程三个维度,带你彻底搞懂Go语言的内存分配原理,帮你避开常见的内存性能陷阱。

2025-11-22 13:58:25 982

原创 MySQL复盘总结

本文系统梳理了MySQL核心知识点,包括基本概念、语法规范和查询语言。主要内容涵盖:1.数据库基础概念(DB/DBMS/SQL)和操作类型(DDL/DML/DCL等);2.数据存储特点与语法规范;3.DQL查询语言详解,包含基础查询、条件查询(模糊查询/逻辑运算)、排序查询、分组查询(GROUP BY/HAVING)、连接查询(内/外连接)以及子查询(标量/列/行子查询)。文章通过具体案例演示各类查询语法,适合用于MySQL知识查漏补缺和系统复习。

2025-11-15 14:18:01 627

原创 MySQL学习笔记

MySQL数据定义语言摘要 本文介绍了MySQL数据定义语言(DDL)的核心操作,主要包括库和表的创建、修改与删除,以及数据类型和约束的管理。

2025-11-08 13:52:07 1016

原创 MySQL学习笔记--高级查询语句

本文介绍了Mysql的高级查询语句,包括连接查询,子查询,以及分页查询,其中包含了连接查询的不同情况,以及子查询的分类均有介绍

2025-11-01 13:29:30 606

原创 MySQL学习笔记(查询和函数部分)

本文介绍了MySQL查询语句的基础知识,包括基础查询、条件查询、排序查询和分组查询,以及常见函数的使用方法。

2025-10-26 14:51:11 1092

原创 简易网络聊天室(Go语言版)

基于Golang实现的TCP网络聊天室,支持多客户端连接、公聊、私聊和用户列表查询。主要功能包括:用户名唯一性验证、公聊广播、定向私聊(格式:>用户名:消息)、在线用户查询(list命令)。服务器采用goroutine处理并发连接,全局ClientMap管理用户状态。项目结构清晰,分为server(监听连接)、client(用户交互)、message(消息处理)和common(公共定义)模块。

2025-10-18 15:33:04 564

原创 Linux和Docker知识复盘

本文总结了Linux和Docker的常用操作命令,重点介绍了文件目录管理、内容查看、进程管理、权限控制、压缩解压等核心功能。文件操作包括ls/cd/mkdir/cp/mv/rm等基本命令;内容查看涵盖cat/less/grep等工具;进程管理涉及ps/top/kill等命令;权限管理包含chmod/chown/sudo等;压缩解压介绍了tar/zip的用法。文章还简要说明了vim编辑器的多模式操作和光标移动技巧。这些命令总结既包含日常高频操作,也涵盖容易遗忘的进阶用法,是Linux系统管理者的实用速查手册。

2025-10-10 17:47:11 888

原创 Docker网络--笔记

本篇主要是讲解docker网络相关的一些知识点,帮助你认识Docker network

2025-10-04 11:00:11 376

原创 初识Dockerfile

初识Dockerfile,了解学习什么是Dockerfile

2025-09-27 11:41:18 899

原创 docker常用的镜像容器命令操作

此篇中,只统计了一docker一部分的知识点,主要是关于docker的镜像以及容器的基本操作命令。docker run。

2025-09-21 15:42:45 572

原创 安装Docker以及遇到的问题

对于学习Docker,首先安装Docker是必要的,在这里分享一下我的一些安装历程吧,这其中包含了我在安装过程中出现的一些问题,以及解决方法。

2025-09-13 11:09:24 227

原创 Linux基础知识学习

​ 这段时间对于Linux的学习,主要是处于对于一些Linux的命令操作的学习。​ 目前,我学习的Linux的知识,对于Linux的定义为全是命令行操作的系统,要学习很多的命令操作,通过命令来对文件夹,文件,用户组,用户等等进行相应的操作。

2025-09-06 11:08:00 860

原创 go进阶知识复盘

对于go进阶的一些知识点复盘,方法、面向对象、文件操作、JSON、协程、管道、反射以及context、网络编程的知识总结

2025-08-14 16:22:04 651

原创 对于工厂模式的理解

总之,Go 语言的工厂模式本质上是对 “结构体初始化” 的一种封装和抽象,弥补了没有构造函数的特性限制,在实际开发中,工厂模式能有效提升代码的可维护性、扩展性和安全性,是 Go 面向对象编程中不可或缺的模式。如果想要创建一个对外不开放包中的对象,不能够直接创建,可以通过所谓的“工厂模式”通过函数来实现构造的过程。Go 中多态通过 “接口” 实现,工厂模式可以根据不同参数返回不同的接口实现,而外部无需关心具体类型。对于上述代码中的NewPerson就是工厂函数,这样在另一个包中就可以通过该函数实现创建。

2025-07-23 17:49:43 262

原创 go语言基础阶段学习复盘

go语言又称Golang其是由Google公司开发的一种开源编程语言,其作为一种静态类型的编译型语言其吸收了C语言的执行效率,和语法的简洁性,同时摒弃了其中例如指针运算和宏定义类似的复杂的特性。总结下来go语言的特点可以分为:简洁易学、为静态类型和编译型、原生支持并发、内存安全、丰富的标准库、跨平台于交叉编译、接口与组合、工具链完善go语言在构建高性能和高并发的开发时,还兼顾开发效率和代码可维护性。

2025-07-22 16:32:05 1143

原创 go语言基础部分的知识梳理

main包是程序入口包,一般main函数会放在这个包下,要求是main函数一定要放在main包下包的声明和所在的文件夹的名字可以不一致一个目录下的同一级的文件必须归属同一个包,即声明的时候为同一个包方式1:定义一个切片,然后让切片去引用一个已经创建好的数组。

2025-07-14 18:32:48 948

原创 C语言实现简单三子棋(井字连线)

为了能让有地方下棋,并且我更加的整齐和美观.要对棋盘进行一些初始化的设置,放便后续的布局.在这里运用了输出语句对棋盘进行输出,既然这个棋盘是井字型的,便可以定义一个三行三列的二维数组例如board[ROW][[COL](这里我运用ROW代表行,COL代表列,当然这两个都是常量,我运用define进行提前设定的常量).因为我设定的是人机对战,所以设置了玩家下棋和电脑下棋,进行对弈.这里运用定义了一个函数,先将数组都填上空格.结束游戏之后,可以进行继续游戏或者结束游戏.若棋盘满了谁都没有胜利,则判定为平局.

2023-12-04 19:51:56 1404 1

空空如也

空空如也

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

TA关注的人

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