
golang
万灯皆明
JAVA MYSQL ORACLE
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
golang GIN+WebSocket 实现与H5页面以及安卓客户端通信
整个流程大概是这样: 客户端访问 建立连接 保存连接对象 监听webSocket读写 找到指定连接发送数据 在main 函数中注册访问接口以及websocket连接函数 router.GET("/android", func(c *gin.Context) { c.Request.Header.Add("Origin", "http://localhost:8010")...原创 2018-08-10 18:44:12 · 5202 阅读 · 1 评论 -
golang Redis的发布和订阅demo
//redis 发布订阅func main() { err := initRedis() if err != nil { logs.Debug(fmt.Sprintf("connect redis err: %s", err.Error())) os.Exit(1) } //监听test频道 pubSub,err:=rds.Sub("test") if err!=nil ...原创 2018-11-20 16:48:38 · 4166 阅读 · 0 评论 -
golang 数据库生成结构体
SELECTCONCAT(UPPER(LEFT(column_name,1)),SUBSTRING(column_name,2,(LENGTH(column_name)-1))) AS column_name,data_type,xx,column_commentFROM (SELECT DISTINCT REPLACE(column_name,'_','') AS column_name...原创 2018-11-08 10:01:51 · 2382 阅读 · 1 评论 -
golang 进程数据同步sync.WaitGroup
加sync.WaitGroup 会等待WaitGroup内的线程执行完毕后再执行后面的代码,例如var fmtMap sync.Mapfunc producer(ch chan<- int) { defer waitGroup.Done() for i := 0; i < 10; i++ { ch <- i } close(ch) fmtMap.Stor...原创 2018-08-29 18:42:00 · 701 阅读 · 0 评论 -
gorm 封装map 查询条件
type NullType byteconst ( _ NullType = iota // IsNull the same as `is null` IsNull // IsNotNull the same as `is not null` IsNotNull)// sql build wherefunc whereBuild(where map[string]inter...原创 2018-08-29 17:13:20 · 7989 阅读 · 4 评论 -
gorm 关联查询总结
结构体:type Device struct { ID int64 `gorm:"column:id" json:"id"` HardwareId string `gorm:"column:hardware_id" json:"hardwareId"` ModelId int64 ...原创 2018-08-24 15:05:07 · 9509 阅读 · 0 评论 -
golang gorm 批量插入不同数据
func BatchUpdateForm(reportForms []model.ReportForm) { ids := []int64{} formIdMap :=make(map[int64]map[string]interface{}) for _,val :=range reportForms { formIdMap[val.ID]=webgo.StructToMap(va...原创 2018-08-30 18:27:46 · 9693 阅读 · 0 评论 -
golang 根据启动命令切换不同数据库以及在中间件中捕获异常记录日志
dataBase := flag.Bool("MySql",false,"true :线上,false: 线下 默认:false") flag.Parse() //*dataBase=true db.InitDB(*dataBase) //初始化数据库根据 dataBase 参数来判断取线上或者线下启动命令为 :go run main.go -MySql=true 对异...原创 2018-08-30 18:22:32 · 890 阅读 · 0 评论 -
GIN 对传递的参数进行验证
先定义一个接受参数的结构体type parmValid struct { Current int `form:"current" binding:"required,PageValid"` Page_size int `form:"page_size" binding:"required,PageValid"` Start_time time.Time `form:"start_t...原创 2018-08-30 18:14:00 · 13897 阅读 · 0 评论 -
golang Gorm 的使用总结
建立结构体时可以通过 TableName来指定要查找的表名func (CoinLog) TableName() string { return "coin_log"}通过gorm的映射指定对应表的列ID int64 `gorm:"column:id" json:"id"`通过预加载可以实现各个模型之间的一对多关系,...原创 2018-08-10 19:00:31 · 15824 阅读 · 1 评论 -
golang dgrijalva/jwt-go包解析Token 以及将JSON字符串转map
token 为去除 bearer 后的字符串parseAuth, err := jwt.Parse(token, func(*jwt.Token) (interface{}, error) { return mySignKeyBytes, nil }) //将token中的内容存入parmMap claim := parseAuth.Claims.(jwt.MapClaims)...原创 2018-08-10 18:52:44 · 3061 阅读 · 0 评论