go-webmvc框架推荐

go-webmvc 是一套轻量、可改造的 Go mvc开发框架,帮助开发者快速搭建一个结构清晰、易于维护的 Go Web 项目骨架, 避免每次新建项目都要从零开始配置各种常用组件。 省时省力,统一项目结构, 提升开发效率, 对新手入门go开发友好。

快速开始(3 分钟上手)

环境要求:已装好 Go语言环境(1.24.6 及以上),根据需要安装 MySQL 和 Redis 。

  1. 克隆仓库并进入项目目录:
复制代码
git clone git@github.com:bitedge-tech/go-webmvc.git go-webmvc
cd go-webmvc
  1. 准备配置(参考下文 配置详例):编辑 config/config.dev.yaml

注意:请确保本地有 MySQL 和 Redis 实例在运行; 如果不需要redis,可以在server/main.go中注释掉redis的初始化代码。

  1. 安装依赖:
复制代码
cd go-webmvc #项目根目录下
go mod tidy
  1. 运行程序:
复制代码
go run ./cmd/server/main.go
  • 看到 Listening and serving HTTP on :8080 表示启动成功。
  • 在浏览器访问 http://localhost:8080/ 页面显示: "Welcome to Go WebMVC!" 说明服务运行正常。

项目结构

仓库主要目录(摘录):

  • cmd/ :应用入口
    • server/main.go:应用入口,负责配置加载、各组件初始化(日志、DB、Redis)、路由注册与启动。
    • gen/:代码生成相关(gorm-gen)或生成脚本。
  • config/:配置加载器与示例 YAML(config.go, config.dev.yaml)。
  • internal/ :核心业务代码都放在这里
    • handler/:HTTP 层处理函数(login、users、index 等)。
    • service/:业务逻辑层。
    • repository/:持久层(model/ + query/)。
    • router/:路由注册(internal/router/router.go)。
    • middleware/:中间件(如 JWTAuth)。
  • pkg/ :第三方组件封装
    • pkg/db/:MySQL 初始化与迁移(mysql.go)。
    • pkg/logger/:zap 日志封装(logger.go)。
    • pkg/redis/:Redis 客户端(redis.go)。
    • pkg/natCon/:NATS 连接示例。
  • build/:编译生成的二进制文件,可以对应系统中直接运行(build/app1)。
  • Dockerfile:镜像构建脚本,用于生成docker镜像运行在docker下

go-wbmvc github地址:https://github.com/bitedge-tech/go-webmvchttps://github.com/bitedge-tech/go-webmvc

相关推荐
t***5441 小时前
Clang 编译器在 Orwell Dev-C++ 中的局限性
开发语言·c++
2601_949817721 小时前
Spring Boot3.3.X整合Mybatis-Plus
spring boot·后端·mybatis
oy_mail2 小时前
QoS质量配置
开发语言·智能路由器·php
oyzz1202 小时前
PHP操作redis
开发语言·redis·php
uNke DEPH2 小时前
Spring Boot的项目结构
java·spring boot·后端
nashane2 小时前
HarmonyOS 6学习:网络能力变化监听与智能提示——告别流量偷跑,打造贴心网络感知应用
开发语言·php·harmony app
zhenxin01222 小时前
Spring Boot 3.x 系列【3】Spring Initializr快速创建Spring Boot项目
spring boot·后端·spring
凌波粒3 小时前
Java 8 “新”特性详解:Lambda、函数式接口、Stream、Optional 与方法引用
java·开发语言·idea
前端一小卒3 小时前
前端工程师的全栈焦虑,我用 60 天治好了
前端·javascript·后端
不停喝水3 小时前
【AI+Cursor】 告别切图仔,拥抱Vibe Coding: AI + Cursor 开启多模态全栈新纪元 (1)
前端·人工智能·后端·ai·ai编程·cursor