在Golang中,如何将一个结构体转成map?
本文介绍两种方法。第一种是是使用json
包解析解码编码。第二种是使用反射,使用反射的效率比较高,代码在这里。
Golang Map解析:用法,源码分析
本文基于Golang 1.14
用法以及注意事项
Go blog中介绍了map
的基本用法。在Go blog之外,这里介绍几个值得注意的点。
map作为集合(set)
在Golang
中,没有集合的类型。所以一般是把map
当做集合来用。
看下面例子
1 | func main(){ |
其实对例子进行优化,不使用bool
类型,来节省空间。
1 | func main(){ |
使用空的结构体struct{}
,会比使用byte
节省空间。经过编译器的优化,struct{}
指向runtime.zerobase
,不占用空间。
Goalng defer解析:用法,源码分析
认证的方式
发表于
更新于
OAuth介绍
如何保存你的登录密码
发表于
更新于
开发登录功能的时候,需要保存用户的密码。用户的密码一般不是明文(plain text),而是经过散列(hash)或者加密(encrypt)保存的。本文介绍几个常用的保存密码的算法。
考虑以下的User
表。
1 | CREATE TABLE `user`( |
SQL的创建语句转化成Golang的ORM结构体(struct)
发表于
更新于
在Golang的Web编程中,有时候我们创建了一个SQL的表,需要编写对应的结构体的代码。这是一项繁琐无聊的工作。本文介绍一种自动将创建表格的SQL语句转换成Golang的ORM结构体的代码,从而提高编程效率。代码来自于我的Github。
例子
例子:下面是一个创建user
表的sql语句
1 | CREATE TABLE `USER`( |
如何优化MySQL查询语句
发表于
MySQL的 `BIGINT` vs. `INT`,`DATETIME` vs. `TIMESTAMP`
发表于
更新于