Go 好用的web框架

使用 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

在这里插入图片描述

详细文档地址:点击前往

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Web MVC Spring Web MVC 是包含在 Spring 框架中的 Web 框架,建立于...
    Hsinwong阅读 22,674评论 1 92
  • 4. Web集成 4.1. Web提供的全局变量 Web集成模块向模板提供web标准的变量,做如下说明 reque...
    西漠阅读 10,068评论 0 0
  • 狂神说Vue笔记 想要成为真正的“互联网Java全栈工程师”还有很长的一段路要走,其中前端是绕不开的一门必修课。本...
    华夏天骄阅读 4,388评论 0 0
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,467评论 2 59
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139