随笔分类 -  Go

摘要:实战:Go语言项目之使用JWT实现用户认证实战:Go语言项目之使用JWT实现用户认证 基于cookie-Session 和基于token的认证模式 需求:请求分类 用户认证 HTTP 是一个无状态的协议,一次请求结束后,下次再发送,服务器就不知道这个请求是谁发过来的(同一个 IP 不代表同一个用户),在Web 应用中,用户的认证和鉴权是非常 阅读全文
posted @ 2024-12-25 16:54 寻月隐君 阅读(745) 评论(0) 推荐(1)
摘要:Go语言基础数据类型详解:整型、浮点型、复数与字符串Go语言基础数据类型详解:整型、浮点型、复数与字符串 Go语言作为一门静态强类型的语言,其数据类型设计简洁而高效。掌握Go的基本数据类型是每个开发者深入理解Go语言的基础。本篇文章将详细介绍Go语言中最常见的基本数据类型,包括整型、浮点型、复数、布尔型、字符串等,并结合实例代码演示如何在Go中使用这 阅读全文
posted @ 2024-12-25 15:31 寻月隐君 阅读(317) 评论(0) 推荐(0)
摘要:# Go 语言之 Shutdown 关机和fvbock/endless 重启 Shutdown 源码 ```go // Shutdown gracefully shuts down the server without interrupting any // active connections. 阅读全文
posted @ 2023-06-18 19:28 寻月隐君 阅读(326) 评论(0) 推荐(0)
摘要:# Go 语言之 Viper 的使用 ## Viper 介绍 [Viper](https://github.com/spf13/viper): ### 安装 ```bash go get github.com/spf13/viper ``` ### Viper 是什么? Viper 是一个针对 Go 阅读全文
posted @ 2023-06-18 15:29 寻月隐君 阅读(844) 评论(0) 推荐(0)
摘要:# Go 语言之在 gin 框架中使用 zap 日志库 ### gin 框架默认使用的是自带的日志 #### `gin.Default()`的源码 Logger(), Recovery() ```go func Default() *Engine { debugPrintWARNINGDefault 阅读全文
posted @ 2023-06-17 18:11 寻月隐君 阅读(858) 评论(0) 推荐(0)
摘要:# Go 语言之自定义 zap 日志 [zap 日志](https://github.com/uber-go/zap):https://github.com/uber-go/zap ## 一、日志写入文件 - `zap.NewProduction`、`zap.NewDevelopment` 是预设配 阅读全文
posted @ 2023-06-17 14:25 寻月隐君 阅读(504) 评论(0) 推荐(0)
摘要:# Go 语言之 zap 日志库简单使用 ## 默认的 Go log log:https://pkg.go.dev/log ```go package main import ( "log" "os" ) func init() { log.SetPrefix("LOG: ") // 设置前缀 f, 阅读全文
posted @ 2023-06-17 10:57 寻月隐君 阅读(213) 评论(0) 推荐(0)
摘要:# Go Redis 管道和事务之 go-redis ## [Go Redis 管道和事务官方文档介绍](https://redis.uptrace.dev/zh/guide/go-redis-pipelines.html) Redis pipelines(管道) 允许一次性发送多个命令来提高性能, 阅读全文
posted @ 2023-06-16 18:09 寻月隐君 阅读(831) 评论(0) 推荐(0)
摘要:# Go语言之 go-redis 基本使用 ## Redis 介绍 [Redis](https://redis.io/): [Redis 中文网](https://www.redis.net.cn/): REmote DIctionary Server(Redis) 是一个由Salvatore Sa 阅读全文
posted @ 2023-06-16 12:58 寻月隐君 阅读(831) 评论(0) 推荐(0)
摘要:# Go 语言之 SQLX 高级操作 sqlx.In ## sqlx.In 介绍 `sqlx` is a package for Go which provides a set of extensions on top of the excellent built-in `database/sql` 阅读全文
posted @ 2023-06-14 17:55 寻月隐君 阅读(364) 评论(0) 推荐(0)
摘要:# Go 语言之 sqlx 库使用 ## 一、sqlx 库安装与连接 ### sqlx 介绍 sqlx is a library which provides a set of extensions on go's standard `database/sql` library. The sqlx 阅读全文
posted @ 2023-06-13 14:51 寻月隐君 阅读(326) 评论(0) 推荐(0)
摘要:# Go 实现 MySQL 数据库事务 ## 一、MySQL事务 MySQL事务是指一组数据库操作,它们被视为一个逻辑单元,并且要么全部成功执行,要么全部回滚(撤销)。事务是数据库管理系统提供的一种机制,用于确保数据的一致性和完整性。 事务具有以下特性(通常由ACID原则定义): 1. 原子性(At 阅读全文
posted @ 2023-06-11 20:09 寻月隐君 阅读(525) 评论(0) 推荐(0)
摘要:# Go 连接 MySQL之 MySQL 预处理 ## 一、ChatGPT 关于 MySQL 预处理 的回答 ### 问:什么是MySQL 的预处理 具体执行过程时什么 #### ChatGPT 答: MySQL的预处理是一种在执行SQL语句之前,先进行编译和优化的机制。它将SQL语句分成两个阶段: 阅读全文
posted @ 2023-06-11 17:42 寻月隐君 阅读(368) 评论(0) 推荐(0)
摘要:title: "Go 语言连接数据库实现增删改查" date: 2023-06-10T18:55:16+08:00 draft: true tags: ["Go"] categories: ["Go"] # Go 连接 MySQL实现增删改查 ## 一、初始化连接 ### 创建项目 ![](http 阅读全文
posted @ 2023-06-11 15:04 寻月隐君 阅读(284) 评论(0) 推荐(0)
摘要:# Go语言之gin框架源码学习 ## gin 框架路由注册与路由匹配、中间件 ```go package main import ( "fmt" "github.com/gin-gonic/gin" "net/http" ) func func1(c *gin.Context) { fmt.Pri 阅读全文
posted @ 2023-06-10 18:40 寻月隐君 阅读(187) 评论(0) 推荐(0)
摘要:# 数据结构 in Golang:Hash Tables(哈希表) ### 场景 - 水果店的价格表: - 苹果 Apple:3元 - 香蕉 Banana:4元 - 桃子 Peach:2元 - 梨 Pear:3元 - 找到一种水果的价格: - 可以使用 binary search,通过名称来查找,耗 阅读全文
posted @ 2023-06-07 22:39 寻月隐君 阅读(144) 评论(0) 推荐(0)
摘要:# 算法 in Golang:Breadth-first search # (BFS、广度优先搜索) ## 最短路径问题 Shortest-path problem - 从 A 到 F 点有多条路径 ## 解决问题的算法 Breadth-first Search(广度优先搜索) 1. 将问题建模为图 阅读全文
posted @ 2023-06-06 23:57 寻月隐君 阅读(132) 评论(0) 推荐(0)
摘要:# 算法 in Golang:Quicksort(快速排序) ## Quicksort(快速排序) - 快速排序 O(nlog2^n),比选择排序要快 O(n²) - 在日常生活中经常使用 - 使用了 D & C 策略(分而治之) ## 使用 Quicksort 排序数组 - 不需要排序的数组(也就 阅读全文
posted @ 2023-06-06 22:05 寻月隐君 阅读(196) 评论(0) 推荐(0)
摘要:# 算法 in Golang:Recursion(递归) ## 递归算法 ### 场景:在套娃中找到宝石 ### 可以这样做 - while 没找到: - if 当前项 is 宝石: - return 宝石 - else if 当前项 is 套娃: - 打开这个套娃 - if 当前项 is 宝石: 阅读全文
posted @ 2023-06-06 18:42 寻月隐君 阅读(111) 评论(0) 推荐(0)
摘要:# 算法 in Golang:Selection sort(选择排序) ## Selection Sort(选择排序) 假设有一个数组,它里面有6个元素,它的顺序是乱的,现在我们想对这个数组进行排序,就是从小到大进行排序。 选择排序是挨个遍历元素,把最小的放在最前面,再把剩余的遍历,把最小的放在后面 阅读全文
posted @ 2023-06-05 23:55 寻月隐君 阅读(46) 评论(0) 推荐(0)