通用api快速開發框架示例 golang

2021-09-02 12:58:03 字數 1994 閱讀 9314

1.上個月go進入tiobe前10名,學go的朋友,慶賀吧,還沒學的朋友,來不

2.工作了4-5個月,抽取了一下工作中用的**,中間換過框架,最終封裝了這些常用api開發func

demo

通用原理:

1.封裝

2.golang reflect inte***ce{}

特點:1.返回json資料

2.一張表的增刪改查以及分頁

3.增加多張表連線操作(…waiting for being beeter)

4.增加**基本資訊介面

5.select * 的優化(反射替換*為具體欄位名)

6.優化自定義gorm日誌(儲存錯誤sql以及相關error)

7.增加許可權(使用者-組(角色)-許可權(選單))

8.增加引數驗證

使用示例

/*user model*/

type user struct

// create user

func

(c *user)

create

(args map

[string][

]string

)inte***ce

// update user

func

(c *user)

update

(args map

[string][

]string

)inte***ce

// delete user, by id

func

(c *user)

deletebyid

(id string

)inte***ce

// get user, limit and search

// clientpage 1, everypage 10 default

func

(c *user)

getbysearch

(args map

[string][

]string

)inte***ce

)//var users = *user{}

var users [

]*user

return deercoder.

getdatabysearch

(user

,&users,

"user"

, args)

//匿名user{}

}

,]

,"pager"

:}

// get user, by id

func

(c *user)

getbyid

(id string

)inte***ce

)var user = user

return deercoder.

getdatabyid

(&user, id)

}

// user detail info

// include table `user` and `userinfo` data

// maybe you need to build detail info like model userinfobk

func

getuserinfobysearch

(args map

[string][

]string

)inte***ce

,&userdetail,

"userinfo"

,"user"

, args)

}

API介面開發簡述示例

先了解下 api 1 api 比開發 web 更簡潔,但可能邏輯更複雜,api 只返回結果,也就是只完成資料輸出,不呈現頁面,2 web 開發,更多的是 get 和 post 請求,api 還有 put delete 請求 3 和 web 開發一樣,首先需要一些相關的引數,這些引數,都會由客戶端傳過...

jquery外掛程式開發通用框架

2017 07 24 更新 增加單例模式。jquery外掛程式開發框架 外掛程式編寫說明 1 外掛程式命名 jquery.外掛程式名 js,如jquery.plugin.js 2 物件方法新增到jquery.fn上,全域性方法新增到jquery物件本身上 3 外掛程式內部的this指向通過選擇器獲取...

Android快速開發框架

前言 自己的專案快做完了,在做專案的過程中遇到了很多困難,於是收集了一些快速開發的框架,使用後大大提高了專案開發速度,無論什麼專案都可以使用的到,在此分享給大家,希望能對大家有幫助 個人建議 有時間的同學可以看一下這些優秀框架的原始碼,一定會有很多收穫!開發工具 android studio 學習資...