Go-Spring 入门篇(二)

序言

在上章 Go-Spring入门篇 我们创建了一个简单的 web 项目。

然而现代项目都是一个 controller + service 外加一个实体层,本章我们试着把 controller 拆分出去。

新建一个 controllers 目录下面创建一个 controllers.go 来导入各个独立的 controller。

controllers/home/home.go

package home

import "github.com/go-spring/spring-core/web"

type Controller struct {
}

func (c *Controller) Home(ctx web.Context) {
   ctx.String("Ok! \n")
}

controllers/contreollers.go

package controllers

import (
    "learn/controllers/home"

    "github.com/go-spring/spring-core/gs"
)

func init() {

    gs.Object(new(home.Controller)).Init(func(c *home.Controller) {
        // 注册路由
        gs.GetMapping("/", c.Home)
    })
}

main.go

package main

import (
    "log"

    _ "learn/controllers"

    "github.com/go-spring/spring-core/gs"
    _ "github.com/go-spring/starter-gin"
)

func main() {
    log.Fatal(gs.Run())
}

重新运行 go run main.go 访问浏览器获得相同的效果,这样就把 controller 拆分出去了

官网及交流

Go-Spring 官网
Github

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!