随笔分类 -  Go

1
与Go相关的东西
摘要:package main import ( "fmt" "github.com/suifengtec/gocoord" ) func main() { // 第一个参数是经度,第二个参数是维度 p := gocoord.Position{Lon: 111.98497861928867, Lat: 2 阅读全文
posted @ 2024-12-19 11:53 alisleepy 阅读(89) 评论(0) 推荐(0)
摘要:背景 在日常工作中经常需要写一写小工具,比如发送get请求,post请求等,在用python时request包比较方便,在用go时可以使用gorequest包,借鉴了py的request包 使用样例 GET请求-client func getRequest(params map[string]str 阅读全文
posted @ 2024-12-15 19:01 alisleepy 阅读(157) 评论(0) 推荐(0)
摘要:锁 互斥锁 解释:互斥锁,保证同一时刻只有 1 个 goroutine 访问共享资源,比如多个协程同时修改同一个文件,同一时刻只能同一个协程进行修改 使用方法 // 定义一个互斥锁 // var 变量名 互斥锁类型 var guardMutex sync.Mutex //上锁 guardMutex. 阅读全文
posted @ 2024-04-10 00:43 alisleepy 阅读(65) 评论(0) 推荐(0)
摘要:通道:channel 名词:在 goroutine 中通信的管道 注意:任何时候,同一时刻只能有一个 goroutine 访问通道进行发送和获取数据 通道的顺序:遵循先入先出的规则 通道的定义 // 定义一个通道 var 变量名 chan 数据类型 // 比如: var intCh chan int 阅读全文
posted @ 2024-04-08 23:36 alisleepy 阅读(38) 评论(0) 推荐(0)
摘要:【go】gorm中去掉默认表名后的s复数形式 背景 使用gorm时,查询数据时mysql报错,显示表名不存在,仔细查看,报错的表名中增加了s,比如实际数据库表名是:ali_user,报错信息中显示表 ali_users 不存在 原因 gorm默认使用结构体的复数形式作为表名 比如: # 表结构体定义 阅读全文
posted @ 2024-03-25 11:08 alisleepy 阅读(451) 评论(0) 推荐(0)
摘要:一个go的map相关的panic错误 背景:在获取多个数据时,从数据库取到多条数据,需要把多条数据返回给前端,定义一个res返回值,为map[string]any类型,在赋值后运行发生 panic:assignment to entry in nil map 原因:在声明map类型的变量后,直接进行 阅读全文
posted @ 2024-03-06 17:09 alisleepy 阅读(404) 评论(0) 推荐(0)
摘要:###gin框架中结合cron实现定时任务执行 背景:一个hr管理系统中,需要每日定时处理员工离职操作,需要每天定时执行删除账号等操作,在这使用定时任务比较方便,比如每天晚21点执行 实现方式如下: 创建定时任务 # 新建Console包,统一管理定时任务 package Console impor 阅读全文
posted @ 2023-01-08 14:03 alisleepy 阅读(2134) 评论(0) 推荐(0)
摘要:go基础 - WaitGroup用法 package main import ( "fmt" "sync" "time" ) /** * Created by Goland * User: wkk alisleepy@hotmail.com * Time: 2022/8/15 - 23:33 * D 阅读全文
posted @ 2022-08-16 00:03 alisleepy 阅读(50) 评论(0) 推荐(0)
摘要:go学习 - 字符串翻转 代码如下,比较low,但能实现: package go_test_test import ( "fmt" "testing" ) /** * Created by Goland * User: wkk alisleepy@hotmail.com * Time: 2022/8 阅读全文
posted @ 2022-08-05 01:01 alisleepy 阅读(325) 评论(0) 推荐(0)
摘要:【go-基础】interface转string:fmt.Sprintf("%v", value) 背景:在做一个查询时,请求参数为map格式,value值为interface,根据不同的key需要做不同的查询,在模糊查询时value需要拼接 %val%号,简单记录 代码如下: var test in 阅读全文
posted @ 2022-06-20 00:16 alisleepy 阅读(2726) 评论(0) 推荐(0)
摘要:循环结构体,修改结构体中某个字段的值 背景:使用go获取部门列表后,需要修改其中的一个字段的值,将level = 2 修改为 level = “二级部门” 错误方法1:结构体转json后,不行 for _, item := range departments { item.Level = "二级部门 阅读全文
posted @ 2022-04-05 14:17 alisleepy 阅读(533) 评论(0) 推荐(0)
摘要:在部署go项目时用到了查看进程和杀死进程再重新开启进程,记录一下 阅读全文
posted @ 2019-07-17 12:59 alisleepy 阅读(13252) 评论(0) 推荐(0)
摘要:主要学习下go语言中的测试文件,实现斐波那契数列,常量的定义 阅读全文
posted @ 2019-07-17 12:56 alisleepy 阅读(233) 评论(0) 推荐(0)
摘要:Go语言学习之main包的讲解 1.Go中main函数不支持任何返回值 2.可以通过os.Exit(0)来返回状态 3.main函数不支持传入参数 4.在程序中可通过os.Args来获取命令行参数 阅读全文
posted @ 2019-07-17 12:56 alisleepy 阅读(1364) 评论(0) 推荐(0)
摘要:简单记录下记录类型的东西 阅读全文
posted @ 2019-07-17 12:56 alisleepy 阅读(139) 评论(0) 推荐(0)
摘要:在windows下开发的goweb程序,需要部署在linux服务器上,在这简单记录下具体的操作过程 阅读全文
posted @ 2019-07-17 12:53 alisleepy 阅读(6480) 评论(0) 推荐(0)
摘要:go常用命令 go get:获取远程包(得装git) go run:直接运行程序(写代码时调试用) go build:测试编译,检查是否有编译错误 go fmt:格式化代码(一般不咋用,IDE都自带了) go install:编译包文件并编译整个程序 go test:运行测试文件(运行_test的文 阅读全文
posted @ 2018-11-19 13:02 alisleepy 阅读(152) 评论(0) 推荐(0)
摘要:函数部分 1. 函数基本组成:关键字func、函数名、参数列表、返回值、函数体、返回语句 例子: `func Add(int a, int b) (return int, err error){ ....函数体... } ` 如果相邻参数类型相同,可以简写,eg: a,b int //a、b参数类型 阅读全文
posted @ 2018-11-19 13:01 alisleepy 阅读(102) 评论(0) 推荐(0)
摘要:Go语言流程控制 字典类型Map 1、上节遗留:map字典类型 变量声明: 其中,myMap是变量名,string是键的类型,PersonInfo是存放的值类型 2、创建map: 例子: 3、创建并初始化: `myMap = map[string] PersionInfo{ "1234&q 阅读全文
posted @ 2018-11-19 13:00 alisleepy 阅读(129) 评论(0) 推荐(0)
摘要:GO语言学习笔记 1.数组切片slice:可动态增长的数组 2.错误处理流程关键字:defer panic recover 3.变量的初始化:以下效果一样 (推荐写法) 注意::= 左侧的变量不能是被声明过的 4.定义常量: const 关键字定义常量 5.以大写字母开头的常量在包外可见 6.Go语 阅读全文
posted @ 2018-11-19 12:58 alisleepy 阅读(253) 评论(0) 推荐(0)

1