直接上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應該是會更好用的。學習