美文网首页
Go 好用的web框架

Go 好用的web框架

作者: 阿靖哦 | 来源:发表于2023-01-10 15:40 被阅读0次

使用 Gin-Plus 框架快速进行 web 开发

一、前言

安装

  • Get
go get github.com/archine/gin-plus/v2@v2.1.0
  • Mod
# go.mod文件加入下面的一条
github.com/archine/gin-plus/v2 v2.1.0

# 命令行在该项目目录下执行
go mod tidy

二、项目使用

1、启动入口

定义 main 文件,作为项目启动入口

package main

import (
    _ "gin-plus-demo/controller"
    "github.com/archine/gin-plus/v2/application"
)

//go:generate mvc
func main() {
    application.Default().Run()
}

2、定义数据库模型层

package model

import (
    "github.com/archine/ioc"
    log "github.com/sirupsen/logrus"
)

// User 和数据库对应得结构体
type User struct {
    Age  int
    Name string
}

// UserMapper 操作数据库层
type UserMapper struct{}

func (u *UserMapper) CreateBean() ioc.Bean {
    return &UserMapper{}
}

// AddUser 添加用户
func (u *UserMapper) AddUser(arg *User) {
    log.Printf("%v\n", arg)
}

// GetUser 获取用户
func (u *UserMapper) GetUser() *User {
    return &User{10, "张三"}
}

3、定义controller

package controller

import (
    "gin-plus-demo/model"
    "github.com/archine/gin-plus/v2/mvc"
    "github.com/archine/gin-plus/v2/resp"
    "github.com/gin-gonic/gin"
)

type TestController struct {
    mvc.Controller
    UserMapper *model.UserMapper
}

// User
// @GET(path="/user") 获取用户
func (t *TestController) User(ctx *gin.Context) {
    resp.Json(ctx, t.UserMapper.GetUser())
}

// AddUser
// @POST(path="/user") 添加用户
func (t *TestController) AddUser(ctx *gin.Context) {
    var arg model.User
    if resp.ParamValid(ctx, ctx.ShouldBindJSON(&arg), &arg) {
        return
    }
    t.UserMapper.AddUser(&arg)
    resp.Ok(ctx)
}

4、启动

在这里插入图片描述

访问其中一个接口测试:http://localhost:4006/user

在这里插入图片描述

详细文档地址:点击前往

相关文章

网友评论

      本文标题:Go 好用的web框架

      本文链接:https://www.haomeiwen.com/subject/wsdvcdtx.html