在 go 框架中管理第三方服务依赖:go modules: 存储依赖项于 go.mod 文件中,使用 go get 和 go mod tidy 命令管理。vendor 目录: 存储第三方依赖项副本。第三方依赖管理工具: dep、glide、godep 等,提供更高级的依赖管理功能。实战案例:使用 gin 和 mysql通过 go modules 或 vendor 目录安装 gin 和 mysql 依赖项。使用 gin 创建 web 服务器。初始化连接 mysql 数据库。使用数据库查询和插入功能。 zvvq好,好zvvq
内容来自samhan
Go 框架中第三方服务的依赖管理 本文来自zvvq
在 Go 应用程序中集成第三方服务时,依赖管理至关重要。本文介绍了在 Go 框架中管理依赖关系的不同方法,并提供了一个实战案例。
本文来自zvvq
使用 Go Modules zvvq.cn
Go Modules 是 Go 1.11 版本引入的依赖管理系统。它将依赖关系存储在 go.mod 文件中,并使用 go get 和 go mod tidy 命令来获取和管理依赖项。 zvvq好,好zvvq
1
内容来自samhan666
2 内容来自zvvq
3 copyright zvvq
4 内容来自samhan
5
6
本文来自zvvq
7
// go.mod 内容来自zvvq
module myapp
内容来自zvvq
require ( 本文来自zvvq
<a style=color:f60; text-decoration:underline; href="https://www.zvvq.cn/zt/15841.html" target="_blank">git</a>hub.com/gin-gonic/gin v1.7.7 zvvq
github.com/go-sql-driver/mysql v1.6.0 内容来自zvvq
)
使用 Vendor 目录 zvvq
在 Go 1.10 版本之前,Go 生态系统使用 Vendor 目录来管理依赖性。Vendor 目录包含的所有第三方依赖项的副本。 内容来自zvvq
1
copyright zvvq
2 内容来自samhan666
3 zvvq好,好zvvq
4
5
copyright zvvq
// vendor/github.com/gin-gonic/gin
// ...
// vendor/github.com/go-sql-driver/mysql
// ... zvvq好,好zvvq
使用依赖管理工具 内容来自zvvq
除了 Go Modules 和 Vendor 目录之外,还有其他第三方工具可以用来管理依赖关系,例如:
实战案例:使用 Gin 和 MySQL
现在,让我们通过一个实战案例来演示如何使用 Gin 和 MySQL 作为第三方服务的示例。 内容来自zvvq
1. 安装依赖关系 本文来自zvvq
使用 Go Modules:
内容来自samhan666
1 zvvq
2 zvvq.cn
go get github.com/gin-gonic/gin
zvvq
go get github.com/go-sql-driver/mysql 内容来自samhan666
使用 Vendor 目录:
内容来自zvvq,别采集哟
1
go mod vendor 内容来自zvvq,别采集哟
2. 创建 Gin Web 服务器 zvvq
1
zvvq.cn
2 zvvq
3
本文来自zvvq
4
zvvq
5
6 内容来自zvvq,别采集哟
7 内容来自zvvq
8 本文来自zvvq
9
本文来自zvvq
10
11 内容来自zvvq,别采集哟
12 内容来自zvvq,别采集哟
13 内容来自zvvq,别采集哟
14 本文来自zvvq
15 zvvq.cn
16
17 内容来自samhan
18 zvvq好,好zvvq
19 内容来自samhan
package main
copyright zvvq
import (
"fmt"
"github.com/gin-gonic/gin"
zvvq
) 内容来自samhan666
func main() { copyright zvvq
r := gin.Default()
zvvq.cn
r.GET("/", func(c gin.Context) { copyright zvvq
c.JSON(200, gin.H{ zvvq.cn
"message": "Hello World!", 内容来自samhan
}) zvvq好,好zvvq
})
内容来自zvvq,别采集哟
r.Run() zvvq
}
内容来自zvvq,别采集哟
3. 连接 MySQL 数据库 本文来自zvvq
1 本文来自zvvq
2
zvvq.cn
3 本文来自zvvq
4 zvvq
5
内容来自zvvq,别采集哟
6 zvvq.cn
7
8
zvvq.cn
9
10 zvvq
11 本文来自zvvq
12 zvvq好,好zvvq
13 zvvq.cn
14
copyright zvvq
15
16
内容来自zvvq
17 zvvq好,好zvvq
18
内容来自samhan666
19 内容来自samhan
20 zvvq好,好zvvq
21
copyright zvvq
22
zvvq.cn
23
24
内容来自zvvq,别采集哟
25 zvvq
import ( zvvq好,好zvvq
"database/sql"
_ "github.com/go-sql-driver/mysql"
zvvq
)
var db sql.DB copyright zvvq
func init() {
dsn := "user:password@tcp(127.0.0.1:3306)/database_name"
db, _ = sql.Open("mysql", dsn) 内容来自samhan
} zvvq.cn
func GetUsers() []User {
rows, _ := db.Query("SELECT FROM users") 内容来自zvvq,别采集哟
var users []User zvvq
for rows.Next() {
var u User zvvq好,好zvvq
_ = rows.Scan(&u.ID, &u.Name, &u.Email)
users = append(users, u)
}
return users 内容来自zvvq
} 内容来自zvvq,别采集哟
4. 添加用户 zvvq
1
2 内容来自samhan666
3
zvvq.cn
4
func AddUser(u User) { 内容来自zvvq,别采集哟
stmt, _ := db.Prepare("INSERT INTO users (name, email) VALUES (?, ?)")
_, _ = stmt.Exec(u.Name, u.Email)
} 本文来自zvvq
以上就是golang框架中第三方服务的依赖管理的详细内容,更多请关注其它相关文章! zvvq.cn