直接上Github https://github.com/JabinGP/demo-gomysql
代码有master和gorm两个分支,master分支用的是xorm,gorm不言而喻。mysql
两个分支都是简单的单表查询,比较便于理解学习框架。git
两个分支都是只须要补齐mysql的配置文件,提早建好对应库,不须要建表就能够直接跑起来的,便于快速看到效果,具体的启动方式在README中有解释。github
具体的就很少说了,都在代码里面,也有详细的注释,主要讲讲体验。若是你没有决定用哪一个,信我就选
xorm
。sql
两个框架大同小异,可是我的感受xorm的文档,以及api的逻辑性上比较顺应个人想法(大概就是我猜它会怎么去暴露api给我用,而后用了以后发现确实是这样的)。数据库
Gorm有几点我以为不太好用:api
Gorm在个人一个简易demoiris项目实战简易聊天室中使用到,
其中Gorm在另外一个简单的demo中尝试使用,Gorm在项目中用到级联查询的时候很是难受,翻看了不少遍官方文档,官方文档在这一块说得不是很清楚,也没有什么示例,最后是本身不断尝试组合实现的。框架
因为尚未使用过Xorm作项目,只是写了简单的单表示例,Xorm彷佛也支持级联查询,但我更看重的是Xorm在文档中提供了直接执行SQL的方法,我更倾向于使用原生SQL加传入结构体指针扫描的形式完成级联查询,接下来打算将iris项目实战简易聊天室用xorm重构,看看效果后再对本文进行更新,不过我的感受xorm应该是会更好用的。学习