浅谈Go语言的error类型

error类型是go语言的一种内置类型,使用的时候不用特定去import,他本质上是一个接口 type error interface{ Error() string //Error()是每一个订制的error对象需要填充的错误...

gorm FirstOrCreate和受影响的行数实例

FirstOrCreate获取第一个匹配的记录,或创建一个具有给定条件的新记录(仅适用于struct, map条件)db.Where(User{Name: "Jinzhu"}).FirstOrCreate(&user)代码案例:func (tsu *Topi...

golang gorm 计算字段和获取sum()值的实现

计算表lb_ytt_user_money_log 中,字段money的和代码如下:var total_money []intsqlstr := `select SUM(money) as total_money from lb_ytt_user_money_log where user_i...

golang gorm 结构体的表字段缺省值设置方式

我就废话不多说了,大家还是直接看代码吧~type Animal struct { ID int64 Name string `gorm:"default:'galeone'"` Age int64} 把 name 设置上缺省值 galeone 了。补...

golang 结构体初始化时赋值格式介

golang在给结构体赋值初始值时,用:分割k,v值 x := ItemLog{ Id: GetUuid(), ItemId: u.Id, UsrId: "123", Name: u.Name, Price: u.Price, Desc: u...

Golang自定义结构体转map的操作

在Golang中,如何将一个结构体转成map? 本文介绍两种方法。第一种是是使用json包解析解码编码。第二种是使用反射,使用反射的效率比较高,代码在这里。如果觉得代码有用,可以给我的...

golang 实现struct、json、map互相转化

一、Json和struct互换(1)Json转struct例子:package main import ( "fmt" "encoding/json") type People struct { Name string `json:"name_title"` Age int `json...

解决goxorm无法更新值为默认值的问题

今天遇到个问题,goxorm无法更新某一个字段为0.xxTable := &models.XXTable{Visible: visible}affected, err := eng.Where("id=?", id).Update(xxTable)这种情况下,因为go的结...

golang 通过ssh代理连接mysql的操作

我就废话不多说了,大家还是直接看代码吧~package mainimport ( "bytes" "context" "database/sql" "errors" "fmt" "github.com/go-sql-driver/mysql" "golang.org/x/crypto/...

Golang 实现Thrift客户端连接池方式

1 前言阅读文章之前,请先了解一下thrift相关知识。thrift官方并没有提供客户端连接池的实现方案,而我们在实际使用时,thrift客户端必须复用,来保证较为可观的吞吐量,并避免在高QP...

goland设置控制台折叠效果

1.快捷键 ctrl(cmd) + shift + A或者Help—>Find Action2.输入Registry,输完记得回车3.取消go.run.process.with.pty勾选小知识点:上面图可以直接搜索—>直接输入go...

golang 生成定单号的操作

年(2位)+一年中的第几天(3位)+指定位数随机数//生成单号//06123xxxxx//sum 最少10位,sum 表示全部单号位数func MakeYearDaysRand(sum int) string { //年 strs := time.N...

xorm根据数据库生成go model文件的操作

你懂的,手工翻译表定义到go结构体是很枯燥的。so,用xorm搞定。go get github.com/go-xorm/cmd/xorm安装以下依赖,用到哪个装哪个。github.com/go-xorm/xorm驱动Mysql: github.c...

解决go build不去vendor下查找包的问题

go build 报错:main.go:5:2: cannot find package “gopkg.in/go-playground/validator.v9” in any of:/usr/local/go/src/gopkg.in/go-playground/validator.v9...

golang-gin-mgo高并发服务器搭建教程

gin-mgo服务器搭建该服务器实现简单接收请求并将请求参数封装存储在mongodb数据库中,本文将讲述gin-mgo的使用方法。项目完整代码地址: https://github.com/wayne-yhp/golang-...

Golang中优秀的消息队列NSQ基础安装及使用详解

前言NSQ是Go语言编写的,开源的分布式消息队列中间件,其设计的目的是用来大规模地处理每天数以十亿计级别的消息。NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障、故...

Golang中基础的命令行模块urfave/cli的用法说明

前言相信只要部署过线上服务,都知道启动参数一定是必不可少的,当你在不同的网络、硬件、软件环境下去启动一个服务的时候,总会有一些启动参数是不确定的,这时候就需要通过命令行...

Golang使用第三方包viper读取yaml配置信息操作

Golang有很多第三方包,其中的 viper 支持读取多种配置文件信息。本文只是做一个小小demo,用来学习入门用的。1、安装go get github.com/spf13/viper2、编写一个yaml的配置文件...

golang指数运算操作

我就废话不多说了,大家还是直接看代码吧~func main() { fmt.Println(exponent (5,3))}//a的n次方//超出uint64的部分会丢失func exponent (a,n uint64) uint64 { result := u...

go语言math包中有哪些常用方法

go语言math包中的常用方法有:1、取绝对值方法Abs();2、幂次方方法Pow();3、开平方方法Sqrt();4、开立方方法Cbrt();5、向上取整方法Ceil();6、向下取整方法Floor()。详细介绍:math...

go语言中string是什么意思

go语言中string是字符串,它的本质是一个【[]byte】,因此它们两者之间是可以相互转换的,byte数组的长度就是字符串的长度。字符串的值一旦确定,就不能进行修改了。Go语言String的...

golang 实现interface{}转其他类型操作

golang中的string是可以转换为byte数组或者rune数组但是其实byte对应的类型是uint8,而rune对应的数据类型就是int32所以string可以转换为四种类型//interface转其他类型&mdas...

golang切片反序实例

看代码吧~package mainimport ( "fmt")func main() { fmt.Println(reverse([]byte{11,22,33,44}))}func reverse(s []byte) []byte { for i, j := 0, len(s)-1; i < j; i, j...

golang HTTP 服务器 处理 日志/Stream流的操作

目前,我开发 HTTP 服务, 用的是 beego框架, 方便了很多。但是, 有时候,还是会遇到一些 特殊的场景。比如: 过滤日志。这应该是一种典型的stream,同时数据量也适中, 不会有人,为了这个...

浅谈go 协程的使用陷阱

golang 语言协程协程中使用全局变量、局部变量、指针、map、切片等作为参数时需要注意,此变量的值变化问题。 与for 循环,搭配使用更需谨慎。1、内置函数时直接使用局部变量,未...

返回顶部
顶部