golang
BigMasterSun
贵有恒,何必三更眠五更起!最无益,只怕一日曝十日寒~
展开
-
gin框架使用jwt做认证
package mainimport ( "errors" "net/http" "strings" "time" jwt "github.com/develop1024/jwt-go" "github.com/gin-gonic/gin")// MyClaims 自定义声明结构体并内嵌jwt.StandardClaims// jwt包自带的jwt.StandardClaims只包含了官方字段// 我们这里需要额外记录一个username字段,所以要自定义结构体// 如果想要.原创 2021-11-08 14:27:36 · 366 阅读 · 0 评论 -
go的文件操作
参考:Go语言文件操作 | 李文周的博客package mainimport ( "bufio" "fmt" "io" "io/ioutil" "os")// bufio读取文件,bufio是在file的基础上封装了一层API,支持更多的功能。func bufioReadFile() { file, err := os.Open("./go.mod") if err != nil { fmt.Printf("read failed, error: %v\n", err原创 2021-11-04 15:42:37 · 110 阅读 · 0 评论 -
go的path和filepath包
package mainimport ( "fmt" "os" "path" "path/filepath")func main() { p := "/opt/assess/wsgi.py" fmt.Println(path.Base(p)) // wsgi.py fmt.Println(path.Dir(p)) // /opt/assess fmt.Println(path.Ext(p)) // .py fmt.Println(path.IsAbs(p)) // t.原创 2021-11-04 14:20:01 · 520 阅读 · 0 评论 -
gorm 增删改查
新建一个库practice然后建表CREATE TABLE `animals` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT 'galeone', `age` int(10) unsigned DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;-- -------转载 2021-11-03 18:29:36 · 387 阅读 · 0 评论 -
go time包
package mainimport ( "fmt" "time")func timeDemo() { now := time.Now() //获取当前时间 fmt.Printf("current time:%v\n", now) year := now.Year() //年 month := now.Month() //月 day := now.Day() //日 hour := now.Hour() //小时 minute := now.M.原创 2021-11-02 18:18:38 · 78 阅读 · 0 评论 -
go操作mysql(原生database/sql, sqlx库)GORM
参考:Go语言操作MySQL | 李文周的博客安装:go get -u github.com/go-sql-driver/mysql示例:package mainimport ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql")// go get -u github.com/go-sql-driver/mysql// 定义一个全局对象dbvar db *sql.DB// 定义一个初始化数据库的原创 2021-11-02 11:48:49 · 754 阅读 · 0 评论 -
go并发channel
参考:Go语言基础之并发 | 李文周的博客package mainimport "fmt"func recv(s chan int) { s <- 10 // 把10发送到a中}func main() { a := make(chan int) /* 通过make(chan int),开辟的通道是一种无缓冲通道,无缓冲的通道只有在有人接收值的时候才能发送值,所以当对这个缓冲通道写的时候, 会一直阻塞等到某个协程对这个缓冲通道读。main函数的执行在go语言中本身.原创 2021-10-29 18:13:32 · 102 阅读 · 0 评论 -
go 结构体相关
参考链接:Go语言基础之结构体 | 李文周的博客以下是结构体的方法、构造函数、接收类型等示例package mainimport "fmt"type Persion struct { Name string Age int8}// 构造函数func NewPersion(name string, age int8) *Persion { return &Persion{ Name: name, Age: age, }}// 函数不属于任何类型,原创 2021-10-27 15:52:53 · 83 阅读 · 0 评论 -
golang之基本数据类型(字符串/字符操作)、类型转换、函数练习
Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)等。一、整型# 整型分为以下两个大类: 按长度分为:int8、int16、int32、int64 对应的无符号整型:uint8、uint16、uint32、uint64# 其中,uint8就是我们熟知的byte型,int16对应C语言中的short型,int64...原创 2019-09-04 16:39:34 · 623 阅读 · 0 评论 -
golang之命令行交互、if判断、for循环、switch分支、goto、标签
一、命令行交互命令行交互一般使用 fmt.Scanln()用于接收输入,然后通过指针用输入的值修改定义好的变量的值package mainimport ( "fmt" "reflect")func main() { var name string var age int fmt.Print("请输入你的名字和年龄:") // _是占位符,如果该位接收的话,输出...原创 2019-09-03 16:06:03 · 2503 阅读 · 0 评论 -
golang之变量、常量、自定义类型及运算符、指针
Go语言是一种编译型语言下载地址:https://studygolang.com/dl配置GOPATHGOPATH是一个环境变量,用来表明你写的go项目的存放路径(工作目录)。 变量名:GOPATH 值:G:\goGOPATH路径最好只设置一个,所有的项目代码都放到GOPATH的src目录下我在g盘新建一个go的工作目录,在该目录下新建三个目录 bin:用来存放编译后生成的可执...原创 2019-09-02 15:44:06 · 697 阅读 · 1 评论