gin gorm logrus實現增刪改查專案原始碼

2022-02-23 17:32:10 字數 1709 閱讀 8063

//對應的實體類

id

int `gorm:"type:bigint(20);column:id;primary_key;auto_increment"`

key string `gorm:"type:varchar(255);column:key;not null"`

content string `gorm:"type:varchar(1500);column:content;not null"`

ctime

int `gorm:"type:bigint(20);column:ctime;not null"`

utime

int `gorm:"type:bigint(20);column:utime;not null"`}//

宣告全域性資料庫連線變數

var db *gorm.db

var log =logrus.new()

func main()

//初始化,建立連線

func init()

//查詢所有使用者資訊

func listall(context *gin.context) )

}//建立乙個長度為0,容量為count的切片,使其避免擴容。 當時沒用gorm,需要存到集合裡,才會有擴容。下述不會

//

if rowsaffected > 0)

}else

) }}//

新增資料

func add(context *gin.context) )

}else

) }}//

根據id刪除資料

func delete(context *gin.context) )

} else

) }}//

根據id修改資訊

func update(context *gin.context) )

} else

) }

}func loggertofile() gin.handlerfunc

//例項化

logger :=logrus.new()

//設定輸出

logger.out =src

//設定日誌級別

logger.setlevel(logrus.debuglevel)

//處理日期格式

logger.setformatter(&logrus.textformatter)

//設定日誌格式

logger.setformatter(&logrus.jsonformatter{})

return func(c *gin.context) ).info()}}

快速排序演算法實現(遞迴實現 棧實現)

基本思想 選擇乙個基準元素,比如選擇最後乙個元素,通過一趟掃瞄,將待排序列分成兩部分,一部分比基準元素小,一部分大於等於基準元素,此時基準元素在其排好序後的正確位置,又稱為軸位置,此位置的元素確定後不再參與排序,然後再用同樣的方法遞迴地排序劃分的兩部分。分析 快速排序是不穩定的排序。快速排序的時間複...

介面實現與配置實現

在實現系統功能的時候,通常會首先定義好功能的介面,在系統功能不斷被實現的過程中,慢慢的發現有些介面的實現很類似,這個時候通常會開始做一次抽象,形 成乙個共同的部分,慢慢的系統形成了乙個抽象的層次,而為了通用,通常是通過定義介面,形成乙個抽象類,抽象類中暴露出一些抽象方法供外部擴充套件實 現,逐步的積...

js分頁實現,前端實現。

主要是借鑑了網上乙個例子,自己重新加了樣式,新增了跳轉,修改了一些小地方,用於和大家一起分享,前端分頁的技巧,的資料是我已經寫好了,其實大家也可以前端渲染 然後再分頁,都是可以的。其實分頁最關鍵是這兩句 var startrow currentpage 1 pagesize 1 currentpag...