Debian 中 Go 语言如何与数据库交互

本文用 Debian 环境为例,梳理 Go 连接数据库的基本流程:安装 Go、配置环境变量、按数据库类型安装驱动、编写 `database/sql` 示例并运行验证。文中保留了 MySQL、PostgreSQL、SQLite 的驱动命令和一段可直接参考的查询代码,适合快速搭建本地实验环境。

Debian 中 Go 语言如何与数据库交互

Go 语言中 bufio.Scanner 的最佳实践

在 Go 里处理文本输入时,`bufio.Scanner` 常被当作“逐行读取工具”使用,但它真正的价值不止于此。本文从为什么要选它、基础用法、缓冲区限制到实际场景与性能取舍,梳理一套更适合工程实践的使用方法。

Go 语言中 bufio.Scanner 的最佳实践

Golang 中如何在 Gin 里正确配置带 SameSite 的安全 Cookie

在 Gin 里给 Cookie 加上 SameSite,不能靠 `c.SetCookie()` 猜参数位置。真正生效的做法,是直接构造 `http.Cookie` 并通过 `http.SetCookie()` 写回响应,同时把 `Domain`、`Path`、`Secure`、`HttpOnly` 等字段一起配对处理。 Gin 里设置 Cookie 看似只是一次 `c.SetCookie()` 调用,但只要涉及 `SameSite`,这层封装就很容易让人误判参数含义,结果登录态能写入,CSRF 防护却没有真正启用。

Golang 中如何在 Gin 里正确配置带 SameSite 的安全 Cookie

Go 语言里的 `[...]int{}` 是什么?为什么这道题会输出 100

`[...]int{}` 不是错误语法,而是 Go 中“由编译器推断数组长度”的写法。配合按索引初始化和 `rune` 字符常量后,这道看起来像 `map` 的题,结果其实是长度 `100`。文章会把三处容易混淆的点拆开解释清楚。 `[...]int{}` 在 Go 里并不是少见语法,但和按索引初始化、单引号字符放在一起时,很容易让人误判成 `map` 或直接怀疑会编译失败。

Go 语言里的 `[...]int{}` 是什么?为什么这道题会输出 100

CentOS 下快速安装 Golang 环境

这篇文章整理了在 CentOS 上手动安装 Go 1.19.4 的最短路径,包括下载、解压、配置环境变量和版本验证四个关键步骤。文中保留可直接执行的命令,并补充每一步的作用与判断方法,适合需要快速搭建可用 Golang 环境的读者参考。

CentOS 下快速安装 Golang 环境

Debian 上如何更新 Golang 版本:安装、配置与验证一文讲清

在 Debian 上升级 Golang,真正容易出问题的不是安装命令本身,而是旧版本残留、安装方式混用和环境变量未刷新。本文按“清理旧版、选择安装包、配置路径、验证结果”的顺序整理出一套可直接执行的更新流程,并说明 .deb 与 .tar.gz 两种方式分别适合什么场景。

Debian 上如何更新 Golang 版本:安装、配置与验证一文讲清

面试题:Go 语言中 string(65) 输出的为什么不是 65?

`string(65)` 为什么打印出的是 `A`,而不是字符串 `65`?这道常见 Go 面试题考的并不是记忆,而是对字符、`rune`、字符串转换语义的理解。文章会拆开 `string(int)` 的真实含义,并给出把整数转成数字字符串的正确写法与排错提示。

面试题:Go 语言中 string(65) 输出的为什么不是 65?