谈谈go的relfect

go的reflect实现了一个运行时反射,它允许程序操纵任意类型的对象

reflect.TypeOf函数能把对象的类型信息,它返回一个relect.Type

reflect.Type.Field模块可以获得struct或者interface中的字段名,字段类型,字段的tag等信息

reflect.ValueOf可以获得一个对象的值信息,比如它是指针还是实体,值的类型和interface类型下的值,它返回一个reflect.Value

我这里简单谈谈reflect的用法和哪些能做到哪些不能做到

Ps:以下所有代码都包含在这个测试项目

gorm简介[前]

我们都知道,在正式环境中直接使用sql来查询数据库是很危险的,处理不好就有被注入式攻击的风险

而且组装sql语句也容易出错和减低代码的可维护性

所以需要一个工具来管理数据库语句的组装和操作

gorm是目前比较成熟的go语言数据库管理库,它可以很方便的把go的结构体和数据库表绑定,从而简化获取数据的操作

git错误push与回滚

之前看漏眼把一个zip的文件commit了,然后我又不小心push到远程gitlab上,导致项目直接大了10M。于是我查了下git的资料,发现可以用删除分支来解决这个问题,下面我来讲讲做法


上一页 归档 下一页