go-MySql的逆向工程

背景:在go中写mysql表对应的struct,如果每一个struct都手动写是很费时的工作,好在xorm帮我们解决了这个问题,使用xorm可以一键生成数据库中所有表对应的实体类。

xorm是go语言中一个非常好用且强大的开源orm框架

优点:

  • 支持Struct和数据库表之间的灵活映射,并支持自动同步表结构
  • 事务支持
  • 支持原始SQL语句和ORM操作的混合执行
  • 使用连写来简化调用
  • 支持使用Id, In, Where, Limit, Join, Having, Table, Sql, Cols等函数和结构体等方式作为条件
  • 支持级联加载Struct
  • 支持LRU缓存(支持memory, memcache, leveldb, redis缓存Store) 和 Redis缓存
  • 支持反转,即根据数据库自动生成xorm的结构体
  • 支持事件
  • 支持created, updated, deleted和version记录版本(即乐观锁)

操作步骤

第一步:

go get github.com/go-xorm/cmd/xorm
go get github.com/go-xorm/xorm

第二步:使用 go env命令查看GOPATH的安装路径

               在(GOPATH的安装路径)\pkg\mod\github.com\go-xorm\cmd\xorm@v0.0.0-20190426080617-f87981e709a1  目录下,执行

go build

  

第三步:还是在此目录下执行

xorm reverse mysql root:youpassworl@(127.0.0.1:3306)/youDATABASE?charset=utf8 ./templates/goxorm/

  

结果:执行完上面操作后会在当前目录的models文件夹中生成go的实体类文件

posted @ 2022-01-12 14:21  袁浩178  阅读(285)  评论(0编辑  收藏  举报