自建 Go 通用工具库,提供常用的工具函数和组件。
go get github.com/ningblue/go-lib提供丰富的切片操作函数,如过滤、映射、去重等。
import "github.com/ningblue/go-lib/slice"
// 示例:去重
uniqueSlice := slice.Unique([]int{1, 2, 2, 3, 3, 4})基于 zap 的结构化日志组件,支持链路追踪。
import "github.com/ningblue/go-lib/logger"
log := logger.NewLogger()
log.Info("Hello World")提供常用的加密解密功能。
import "github.com/ningblue/go-lib/cryptor"支持 MongoDB、MySQL、Redis 等数据库的操作工具。
db/mongodb- MongoDB 操作db/gorm- GORM 相关工具db/mysql- MySQL 工具db/redis- Redis 工具
HTTP 请求客户端工具。
import "github.com/ningblue/go-lib/httpclient"各种通用工具函数。
import "github.com/ningblue/go-lib/utils"convert- 数据类型转换mathutil- 数学工具函数pointer- 指针操作工具random- 随机数生成render- 渲染工具structs- 结构体操作validator- 数据验证
package main
import (
"fmt"
"github.com/ningblue/go-lib/slice"
"github.com/ningblue/go-lib/random"
)
func main() {
// 使用 slice 包
numbers := []int{1, 2, 3, 4, 5}
doubled := slice.Map(numbers, func(i int, v int) int { return v * 2 })
fmt.Println(doubled) // [2, 4, 6, 8, 10]
// 使用 random 包
randomStr := random.RandString(10)
fmt.Println(randomStr)
}欢迎提交 PR 和 Issue!
MIT License