随笔分类 - go
摘要:package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" // 引入你的数据库驱动) func main() { // 建立数据库连接 db, err := sql.Open("mysql", "use
阅读全文
摘要:https://shockerli.net/post/go-awesome/
阅读全文
摘要:什么是JSON Web Token? JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在各方之间以JSON方式安全地传输信息。由于此信息是经过数字签名的,因此可以被验证和信任。可以使用秘密(使用HMAC算法)或使用RSA或ECDSA的公钥
阅读全文
摘要:包是函数和数据的集合,用 package 关键字定义一个包。 主要用于组织 Go 源代码,提供了更好的可重用性与可读性。由于包提供了代码的封装,因此使得 Go 应用程序易于维护。 下面创建一个自定义包的示例 创建存放包的目录pac mkdir -p $GOPATH/src/test/pac cd $
阅读全文
摘要:3.6 Go 中文和unicode字符之间转换 Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。 在实际应用有很多需要中文和unicode转换的场景,这里主要介绍通过golang实现中文和
阅读全文
摘要:Go内置了(regexp包)对正则表达式的支持,这里是一般的正则表达式常规用法的例子。 示例: package main import ( "bytes" "fmt" "regexp" ) func main() { //是否匹配字符串 // .匹配任意一个字符 ,*匹配零个或多个 ,优先匹配更多(
阅读全文
摘要:需要引入"encoding/json"包 json解析到map jsonStr := "{\"a\":\"test\",\"b\":\"testb\"}" var dat map[string]string err := json.Unmarshal([]byte(jsonStr), &dat) i
阅读全文
摘要:nil是Go中熟悉且重要的预先声明的标识符。它是多种类型零值的字面表示。许多具有其他一些流行语言经验的新Go程序员可能会将其nil视为null(或NULL)其他语言的对应物 。这部分是正确的,但nil 在Go和null(或NULL)其他语言之间存在许多差异。 按照Go语言规范,任何类型在未初始化时都
阅读全文
摘要:map 1、for range map 在开始执行循环的时候,底层做了随机种子,故其循环是随机的。 package main import "fmt" func main() { a := map[int]int{0: 1, 1: 2, 2: 3, 3: 4, 4: 5} for _, c := r
阅读全文
摘要:https://blog.csdn.net/guyan0319/article/details/105918559/ 前言在web应用中经常会遇到数据验证问题,普通的验证方法比较繁琐,这里介绍一个使用比较多的包validator。 原理将验证规则写在struct对字段tag里,再通过反射(refle
阅读全文
摘要:centos下安装go环境有两种方式,一个是yum,一个是直接到官网下载tar.包 1.yum方式安装yum -y install golang1然后就可以使用go语言了,这种方式有着明显的缺点,因为都是yum自己处理的依赖,不方便管理。 下载tar包手动安装标准官网:https://golang.
阅读全文
摘要:命令 作用go mod init 生成 go.mod 文件go mod download 下载 go.mod 文件中指明的所有依赖go mod tidy 整理现有的依赖go mod grap 查看现有的依赖结构go mod edit 编辑 go.mod 文件go mod vendo 导出项目所有的依
阅读全文
摘要:方法二:本地编译 cmd控制台到main.go文件目录下 set GOARCH=amd64 set GOOS=linux go build main.go 会生成一个没有后缀的二进制文件 main 将该文件放入linux系统某个文件夹下 赋予权限 chmod 777 main 最后执行 ./main
阅读全文
摘要:golang开发需要掌握的核心包以及中间件,涵盖项目的各个领域,值得收藏。 常用包常用包 说明fmt 实现格式化的输入输出操作,其中的fmt.Printf()和fmt.Println()是开发者使用最为频繁的函数。io 实现了一系列非平台相关的IO相关接口和实现,比如提供了对os中系统相关的IO功能
阅读全文
摘要:func main(){ router := gin.Default()//创建一个router router.Use(MiddleWare())//中间件,起拦截器的作用 router.Any("/*action", Forward)//所有请求都会经过Forward函数转发 router.Run
阅读全文
摘要:循环赋值 for index,r := range res { t := r.AddTime res[index].FriendTime = time.Unix(t, 0).Format("2006-01-02 15:04:05") } package main import ( "time" "f
阅读全文
摘要:https://shockerli.net/post/go-awesome/
阅读全文
摘要:TCP协议为传输控制协议,TCP协议有以下几个特点:1. TCP是面向连接的传输层协议;2. 每条TCP连接只能有两个端点,每条TCP连接是点到点的通信;3. TCP提供可靠的交付服务,保证传送的数据无差错,不丢失,不重要且有序;4. TCP提供全双工通信,允许双方在任何时候都能发送数据,为此TCP
阅读全文
摘要:https://segmentfault.com/a/1190000020868910?utm_source=sf-similar-article
阅读全文
摘要:https://segmentfault.com/a/1190000042859564
阅读全文