Go 笔记之使用gin实现查询数据Json输出 未封装

来源:互联网 发布:wow数据库副本掉落 编辑:程序博客网 时间:2024/05/17 21:53
package mainimport ( "gopkg.in/gin-gonic/gin.v1" "net/http" "log" "database/sql" _ "github.com/go-sql-driver/mysql")type Person struct { Id        int    `json:"id" form:"id"` Module string `json:"module" form:"module"` Content  string `json:"content" form:"content"`}func main() { db, err := sql.Open("mysql", "root:@tcp(127.0.0.1:3306)/test?parseTime=true") defer db.Close() if err != nil{  log.Fatalln(err) } db.SetMaxIdleConns(20) db.SetMaxOpenConns(20) if err := db.Ping(); err != nil{  log.Fatalln(err) } r := gin.Default() r.GET("/seeinfo", func(c *gin.Context) {  rows, err := db.Query("SELECT id, module, content FROM lb_apppush_notices limit ?",10)  defer rows.Close()  if err != nil {   log.Fatalln(err)  }  persons := make([]Person, 0)  for rows.Next() {   var person Person   rows.Scan(&person.Id, &person.Module, &person.Content)   persons = append(persons, person)  }  if err = rows.Err(); err != nil {   log.Fatalln(err)  }  c.JSON(http.StatusOK, gin.H{  "status" :200,  "error": nil,   "data": persons,  }) }) r.Run(":8000")}


原创粉丝点击