来源:未知 时间:2020-01-13 16:23 作者:小飞侠 阅读:次
[导读] 对于一个项目来说,需要将各个功能模块分开,也就是所谓的三层模型,这里介绍一下个人的做法: contorller主要负责路由 model主要负责程序输入输出的数据 service主要负责数据处理 u...
对于一个项目来说,需要将各个功能模块分开,也就是所谓的三层模型,这里介绍一下个人的做法: contorller主要负责路由 model主要负责程序输入输出的数据 service主要负责数据处理 utils主要负责存放通用的方法,比如连接数据库 代码如下: project->index.go package main import ( c "project/controller" "github.com/gin-gonic/gin") func main() { r := gin.Default() rr := c.GinRouter(r) // 监听并在 0.0.0.0:8080 上启动服务 rr.Run(":8080") } project->controller->index.go package controller import ( "fmt" "project/controller/second" "github.com/gin-gonic/gin") func GinRouter(r *gin.Engine) *gin.Engine { rr := r.Group("/") rr.GET("/first", func(c *gin.Context) { fmt.Println("first .........") }) rr = r.Group("/a") second.Routers(rr) return r } project->controller->second->index.go package second import ( "fmt" ms "project/model/second" ss "project/services/second" "github.com/gin-gonic/gin") func Routers(r *gin.RouterGroup) { rr := r.Group("") rr.POST("/second", Function) return} func Function(c *gin.Context) { var input ms.Input if err := c.BindJSON(&input); err != nil { fmt.Println(err) } ss.Function(c, input) return} project->model->second->index.go package second type Input struct { Id int `view:"id号" json:"id" from:"id"` } project->services->second->index.go package second import ( "fmt" ms "project/model/second" "github.com/gin-gonic/gin") func Function(c *gin.Context, input ms.Input) { fmt.Println("second .........,input:", input.Id) return}
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com