02-Gin路由分组于MVC思想

1,路由分组

1.1,创建 GroupMain

package main

import (
	"github.com/gin-gonic/gin"
	"go_gin/src/demo03_router_group/routers"
)

func main() {
	router := gin.Default();
	routers.AdminRourerInit(router)
	routers.AnalyslsRourerInit(router)
	router.Run(":8080");
}

1.2,创建 adminRouters

package routers

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func AdminRourerInit(engine *gin.Engine)  {
	adminRouters := engine.Group("/admin")
	{
		adminRouters.GET("/", func(context *gin.Context) {
			context.JSON(http.StatusOK,"系统配置")
		})
		adminRouters.GET("/user", func(context *gin.Context) {
			context.JSON(http.StatusOK,"系统配置-->用户配置")
		})
		adminRouters.GET("/depment", func(context *gin.Context) {
			context.JSON(http.StatusOK,"系统配置-->部门管理")
		})
	}
}

1.3,创建 analysisRouters

package routers

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func AnalyslsRourerInit(engine *gin.Engine)  {
	adminRouters := engine.Group("/ana")
	{
		adminRouters.GET("/", func(context *gin.Context) {
			context.JSON(http.StatusOK,"智能分析系统")
		})
		adminRouters.GET("/task", func(context *gin.Context) {
			context.JSON(http.StatusOK,"智能分析系统-->配置任务")
		})
		adminRouters.GET("/info", func(context *gin.Context) {
			context.JSON(http.StatusOK,"智能分析系统-->任务详细")
		})
	}
}

1.4 测试

http://localhost:8080/admin/
在这里插入图片描述
http://localhost:8080/ana/info
在这里插入图片描述

2,MVC思想

2.1,创建 AnalysisTaskService 结构体

package service

import "github.com/gin-gonic/gin"

type AnalysisTaskService struct {

}

func(con AnalysisTaskService) AnaTaskIndex(c *gin.Context)  {
	c.String(200,"查询任务")
}

func(con AnalysisTaskService) AnaTaskAdd(c *gin.Context)  {
	c.String(200,"添加任务")
}

func(con AnalysisTaskService) AnaTaskEdit(c *gin.Context)  {
	c.String(200,"编辑任务")
}

func(con AnalysisTaskService) AnaTaskDelete(c *gin.Context)  {
	c.String(200,"删除任务")
}

2.2,创建 UserService 结构体

package service

import "github.com/gin-gonic/gin"

type UserService struct {

}

func(con UserService) UserIndex(c *gin.Context)  {
	c.String(200,"用户列表")
}

func(con UserService) UserAdd(c *gin.Context)  {
	c.String(200,"添加用户")
}

func(con UserService) UserEdit(c *gin.Context)  {
	c.String(200,"编辑用户")
}

func(con UserService) UserDelete(c *gin.Context)  {
	c.String(200,"删除用户")
}

2.3,创建 AnalysisTaskController

package controller

import (
	"github.com/gin-gonic/gin"
	"go_gin/src/demo04_controller/service"
)

func AnalysisTaskRouterInit(engine *gin.Engine)  {
	analysisTaskRouter := engine.Group("/analysis")
	{
		analysisTaskRouter.GET("/analysisAdd",service.AnalysisTaskService{}.AnaTaskAdd)
		analysisTaskRouter.GET("/analysisEdit",service.AnalysisTaskService{}.AnaTaskEdit)
		analysisTaskRouter.GET("/analysisIndex",service.AnalysisTaskService{}.AnaTaskIndex)
		analysisTaskRouter.GET("/analysisDelete",service.AnalysisTaskService{}.AnaTaskDelete)
	}
}

2.4,创建 UserController

package controller

import (
	"github.com/gin-gonic/gin"
	"go_gin/src/demo04_controller/service"
	"net/http"
)

func UserRourerInit(engine *gin.Engine)  {
	adminRouters := engine.Group("/admin")
	{
		adminRouters.GET("/", func(context *gin.Context) {
			context.JSON(http.StatusOK,"系统配置")
		})
		adminRouters.GET("/userIndex", service.UserService{}.UserIndex)
		adminRouters.GET("/userAdd", service.UserService{}.UserAdd)
		adminRouters.GET("/userEdit", service.UserService{}.UserEdit)
		adminRouters.GET("/userDelete", service.UserService{}.UserDelete)
	}
}

2.5,创建 Main

package main

import (
	"github.com/gin-gonic/gin"
	"go_gin/src/demo04_controller/controller"
)

func main() {
	router := gin.Default();
	controller.UserRourerInit(router);
	controller.AnalysisTaskRouterInit(router);
	router.Run(":8080");
}

2.6,测试

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值