Gin+Gorm+MySql 搭建web脚手架

【go从零单排】gin+gorm理解及实现CRUD 是一个流行的 Go 语言 ORM(对象关系映射)库,它提供了一个简单且强大的方式来与数据库进行交互。它允许开发者使用 Go 语言的结构体来表示数据库表,并通过方法调用来执行 CRUD(创建、读取、更新、删除)操作。Gin 是一个高性能的 Go 语言 Web 框架,专为构建 RESTful API 和 Web 应用而设计。它以简洁的 API 和高效的性能著称,适合用于构建快速、可扩展的 Web 服务。Gin 基于 net/http 包构建,提供了许多功能,如中间件支持、路由分组、JSON 验证、错误处理等。 阅读详情

前言

Gin是Go语言的一套WEB框架,在学习一种陌生语言的陌生框架,最好的方式,就是用我们熟悉的思维去学。作为一名后端Java开发,在最初入门时,最熟悉的莫过于MVC分层结构,可以简单归纳成controller层,model层,dao层,而在SpringBoot框架里,大概也经常看到以下的分层结构
在这里插入图片描述

初始化项目

创建项目名称文件夹demo

go mod init demo
#引入依赖gin+gorm
go get -u github.com/gin-gonic/gin
go get -u github.com/jinzhu/gorm

go根目录底下,创建controller、service、dao、entity包,另外,还需要一个router包,参考下图

demo
├─common
│  └─rsp
├─controller
├─dao
├─entity
├─resources
├─routes
└─service
  • resources资源目录创建一个application.yaml配置文件
  • routes路由映射
  • dao数据库连接层
  • service业务实现层
  • controller路由映射对应的controller层
  • entity数据表结构对应的bean对象
  • common公用包
#cmd批量创建多个文件夹
md  common controller dao entity resources routes service

表结构

CREATE TABLE `sys_user` (
  `id` int(50) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL COMMENT '用户名',
  `nick_name` varchar(150) DEFAULT NULL COMMENT '昵称',
  `avatar` varchar(150) DEFAULT NULL COMMENT '头像',
  `password` varchar(100) DEFAULT NULL COMMENT '密码',
  `email` varchar(100) DEFAULT NULL COMMENT '邮箱',
  `mobile` varchar(100) DEFAULT NULL COMMENT '手机号',
  `create_time` bigint(50) DEFAULT NULL COMMENT '更新时间',
  `del_status` tinyint(4) DEFAULT '0' COMMENT '是否删除 -1:已删除   0:正常',
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='用户表';

最后,代码已经上传到GitHub:https://gitee.com/purslane/demo.git

1.golang : gorm + gin实现restful 接口 golang : gorm + gin实现restful 接口 gorm操作数据库 golang可以使用gorm工具对数据库进行操作,实现对数据的一系列操作. gorm的中文文档如下: https://jasperxu.github.io/gorm-zh/ 主要实现的功能如下: 全功能ORM(几乎) 关联(包含一个,包含多个,属于,多对多,多种包含) Callbacks(创建/... 阅读详情

相关推荐

【Go语言实战】(3) Gin + Gorm 简单备忘录 | 含接口文档

Go语言实战:TodoList 备忘录

面向生活编程 6139

关于gin框架的脚手架

本脚手架是基于gin框架实现内置zap日志库viper读取配置文件jwt & cors & track的中间件缓存使用redis,orm框架使用gorm七牛云oss文件上传使用依赖倒置原则抽象dao层dockerfile制作镜像,docker-compose编排项目使用shell脚本自动生成dao、cache、service、svc模板代码jaeger的链路追踪收集到jaeger-uielk日志收集系统。

weixin_51991615的博客 1030

gin-web:由gin + gorm + jwt + casbin组合实现的RBAC权限管理脚手架Golang版, 搭建完成即可快速、高效投入业务开发

Gin Web 由gin + gorm + jwt + casbin组合实现的RBAC权限管理脚手架Golang版, 搭建完成即可快速、高效投入业务开发 特性 RESTful API 设计规范 Gin 一款高效的golang web框架 MySQL 数据库存储 Jwt 用户认证, 登入登出一键搞定 Casbin 基于角色的访问控制模型(RBAC) Gorm 数据库ORM管理框架, 可自行扩展多种数据库类型(主分支已支持gorm 2.0) Validator 请求参数校验, 版本V9 Lumberjack 日志切割工具, 高效分离大日志文件, 按日期保存文件 Viper 配置管理工具, 支持多种配置文件类型 Packr 文件打包工具, 轻松将静态文件打包到编译后的二进制应用中 GoFunk 常用工具包, 某些方法无需重复造轮子 Workflow 工作流程管理(由于golang工作流相关轮子很

go 进阶 gin实战相关: 五. gin_scaffold 企业脚手架

实际就是拉取一个空的服务baes,测试启动一下,如果能够启动,在这个base上进行业务开发。

qq_29799655的博客 1630

singo:Gin+Gorm开发Golang API快速开发脚手架

Singo Singo: Simple Single Golang Web Service go-crud正式改名为Singo! 使用Singo开发Web服务: 用最简单的架构,实现够用的框架,服务海量用户 Singo文档 视频实况教程 使用Singo开发的项目实例 目的 本项目采用了一系列Golang中比较流行的组件,可以以本项目为基础快速搭建Restful Web API 特色 本项目已经整合了许多开发API所必要的组件: : 轻量级Web框架,自称路由速度是golang最快的 : ORM工具。本项目需要配合Mysql使用 : Gin框架提供的Session操作工具 : Golang Redis客户端 : 开发环境下的环境变量工具,方便使用环境变量 : Gin框架提供的跨域中间件 自行实现了国际化i18n的一些基本功能 本项目是使用基于cookie实现的session来保存登录状态的,

基于GIN + GORM + WIRE实现的web脚手架,支持gorm数据库操作、cors 跨域、集成jwt鉴权等.zip

基于GIN + GORM + WIRE实现的web脚手架,支持gorm数据库操作、cors 跨域、集成jwt鉴权、logrus日志收集、panic 异常捕获等开发必备功能。

Gin+Gorm开发Golang API快速开发脚手架-Golang开发

Gin+Gorm开发Golang API快速开发脚手架-Golang开发 去发现同类优质开源项目:https://gitcode.com/ 本项目是一个基于Golang语言的快速开发脚手架,主要使用了Gin和Gorm这两个在Golang社区中非常流行的库。Gin是一个高性能的Web框架,而Gorm则是一个强大的ORM工具,它们共同构成了这个项目的核心。 简介 项目原名为go-crud,后更名为Si...

gitblog_06785的博客 558

基于Gin框架开发的脚手架工具,便于使用Go快速开发接口,集成数据库、日志、配置等开源库,开箱即用.zip

使用go开发的项目源码、数据集

golang web 开发 —— gin 框架 (gorm 链接 mysql)

go gin gorm mysql

原来45的博客 4647

【SOC 芯片设计 DFT 学习专栏 -- DFT DRC规则检查】

在现代半导体设计中,DFT(Design for Test)技术的重要性不言而喻。它确保了芯片在制造完成后能够进行高效和可靠的测试。DFT设计规则检查(DRC)作为DFT流程中的一个关键环节,通过一系列自动化工具检测设计中的潜在问题,从而保证设计的可测试性和整体质量。在本文中,我们将详细探讨DFT DRC的概念、重要性、检查流程以及具体的规则和应用。Tessent是业界领先的DFT解决方案之一,其DRC工具通过一系列自动化检查,确保设计符合DFT要求。

CodingCos的博客 4166

代码生成 | 安时积分法模型搭建

安时积分法是电池电量计量最基础的方法,今天我们用simulink建模的方式做一个安时积分模型,从而更好地理解安时积分的思想也掌握建模的基础操 ​新建文件 打开MATLAB启动simulink新建一个模型文件 定义变量 和手写代码一样,先定义几个后面要用到的变量,在simulink建模时新建变量用Data Store Memory模块。双击填入要定义的变量名,然后在signal attributes赋初值 如此方法新建四个变量current(电流)初值1000mA、tatol_cap(总容量

ningvay的博客 1万+

【golang自学之路(三)】go-web快速开发脚手架搭建

golang做web开发搭建快速脚手架:1.采用gin框架+gorm框架负责resful+mysql2.缓存采用go-redis3.日志选择zap4.配置采用vipergolang web脚手架项目采用CLD分层理念Controller:服务的入口,负责处理路由、参数校验、请求转发。:逻辑(服务)层,负责处理业务逻辑。**DAO/Repository:**负责数据与存储相关功能。区别于java框架常用的MVC框架,CLD更好的杜绝了Model层在处理业务逻辑时的臃肿。

qq_42961251的博客 2674

PointMLP实战:5分钟用PyTorch搭建点云分类模型(附GitHub代码)

本文提供了基于ICLR 2022论文PointMLP的点云分类模型实战教程。通过PyTorch框架,详细介绍了从环境搭建、数据预处理、模型架构解析到训练推理的全流程,并分享了性能调优技巧。该模型利用残差MLP模块构建,结构清晰高效,适合开发者快速上手并应用于实际点云处理项目。

r2s3t4的博客 214

Gin Web完全指南:基于Gin+Gorm+JWT+Casbin的终极RBAC权限管理脚手架

在当今快速发展的Web开发领域,构建安全、高效且可扩展的后端系统是每个开发者的追求。**Gin Web**作为一款基于Golang的RBAC权限管理脚手架,将Gin、Gorm、JWT和Casbin四大核心技术完美融合,为开发者提供了一个开箱即用的企业级解决方案。无论你是刚入门的Go语言新手,还是经验丰富的后端工程师,这个项目都能帮助你快速构建安全可靠的管理系统。 ## 🚀 为什么选择Gin W

gitblog_01141的博客 409

深入博通PEX89000内部:那颗ARM CPU和Synthetic Mode到底能玩出什么花样?

本文深入解析博通PEX89000系列PCIe交换芯片内置的ARM CPU与Synthetic Mode技术,揭示其在AI计算和数据中心的智能潜能。通过ARM Cortex CPU的实时控制和Synthetic Mode的自治网络功能,PEX89000实现了GPU集群的动态拓扑重组和资源池化,大幅提升AI训练效率。文章还探讨了该技术在软件定义数据平面和弹性AI架构中的创新应用。

weixin_30776273的博客 209

【光子 AI 】LangGraph:Graph = 有向有环图 + 状态机实现原理详解:数据结构模型与核心算法代码实现逻辑解析

LangGraph核心原理解析:基于Pregel模型的消息传递图,结合有向有环图和状态机特性。关键实现包括:1) 共享状态机制(TypedDict/Pydantic模型)配合Reducer逻辑实现状态更新;2) 图拓扑结构通过邻接表维护节点和条件边;3) 检查点机制支持状态持久化和恢复。运行时采用Pregel循环算法,通过超级步迭代执行节点函数、应用状态归约、条件路由下一批节点,同时支持人工中断和异步并行处理。该架构使LangGraph具备循环执行、条件跳转等DAG无法实现的动态流程控制能力。

AI天才研究院 1033

gin-gorm-mysql保姆级教程

序言项目初始化:首先着手创建一个新的Go项目,确保具备进行后续开发工作的基础框架。CRUD实现:在构建的Go项目中,使用gorm着手实现一组用于MySQL数据的crud操作。此阶段涵盖了创建(Create)、检索(Read)、更新(Update)与删除(Delete)功能的完整实现,确保每个接口均能准确对应相应的数据操作。CRUD接口实现:在构建的Go项目中,使用gin着手实现一组用于模拟数据操作的RESTful API接口。

weixin_60597554的博客 1881

探索数据库领域 SQL 的 JSON 数据处理技巧

在当今数字化时代,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,被广泛应用于各种领域,如 Web 应用、移动应用、大数据处理等。数据库作为数据存储和管理的核心,需要具备处理 JSON 数据的能力。本文章的目的在于深入探索 SQL 语言在数据库中处理 JSON 数据的技巧,涵盖从基础的 JSON 数据查询到复杂的 JSON 数据操作,帮助读者全面了解和掌握 SQL 处理 JSON 数据的方法。

2502_91592937的博客 924

Go语言Gin框架+Gorm实战CRUD

Gin 和 Gorm 是 Go 编程语言中流行的开源库。但是,它们服务于不同的目的,通常在 web 开发项目中一起使用。 Gin 是一个用于构建 HTTP 服务器的 web 框架。它提供了一个简单易用的 API,用于处理 HTTP 请求和响应、路由、中间件和其他常见的 web 应用程序所需的功能。它以其高性能和简约为特点,提供了轻量级和灵活的解决方案来构建 web 服务器。 Gorm 是 Go 的一个 ORM(对象关系映射)库。

ecloud_developer的博客 2681

4、基于球面波展开的近场/远场变换技术解析

本文深入解析了基于球面波展开的近场/远场变换技术,涵盖坐标系统选择、截断测量处理、高级SWE方法及实际应用场景。重点介绍了广义SWE、全探头补偿、平移SNF测量(TSWE)等关键技术,结合吸收材料与导电地板系统的误差处理方案,系统总结了各类方法的优缺点与适用场景,并通过流程图和案例分析展示了技术应用路径。该技术在汽车、通信和航空航天领域的天线测量中具有重要价值,可显著提升测量效率与精度。

dell8的博客 255

基于STM32的嵌入式平台实现EtherCAT主站

本文将介绍如何在基于STM32的嵌入式平台上构建EtherCAT主站,并提供相应的源代码。使用SOEM库提供的API函数,我们可以实现与EtherCAT从站设备的实时通信和数据交换。在STM32的代码中,使用SOEM库提供的API函数初始化EtherCAT主站。在SOEM库中,我们可以找到EtherCAT主站的实现代码和相关的API函数。使用SOEM库提供的API函数实现EtherCAT主站的功能,包括发送和接收EtherCAT数据帧、处理从站设备的状态等。确保连接正常并且设备能够相互通信。

CodeSageX的博客 2832

Gin + Gorm 实现CRUD操作的终极指南,再也不需要手写CRUD了

希望使用脚gin+gorm脚手架能够帮助 Golang 开发者彻底告别手写 CRUD api,更轻松便捷的构建高效、优雅的 RESTful API 服务。

zhuyasen的博客 2049

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

基于Gin+Gorm框架搭建MVC模式的Go语言企业级后端系统

Gorm是全特性的ORM框架,即对象关系映射,这样,就需要类似Java那样建立与数据库映射的类,在Go语言当中,我们称之为结构体。首先,先创建一张用于验证的数据库表结构——`name` varchar(50) NOT NULL COMMENT '用户名',`nick_name` varchar(150) DEFAULT NULL COMMENT '昵称',`avatar` varchar(150) DEFAULT NULL COMMENT '头像',

朱季谦 2877

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

go语言web开发系列之十六:gin框架中通过gorm使用事务

一,演示项目的相关信息 1,地址: https://github.com/liuhongdi/digv16 2,功能:以下订单为例,演示了在gorm中启用事务 3, 项目结构:如图: 说明:刘宏缔的go森林是一个专注golang的博客, 地址:https://blog.youkuaiyun.com/weixin_43881017 说明:作者:刘宏缔 邮箱: 371125307@qq.com 二,数据库及sql 1,数据表: 2,建表sql: CREATE TABLE `...

刘老师的技术森林 6466

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Web开发实战:Gin + GORM 构建企业级 API 项目

本文介绍了如何使用Gin框架和GORM构建企业级API项目,实现用户注册、登录(JWT)、分页查询等功能。项目采用分层架构(Controller→Service→Model),包含数据库配置、中间件(JWT鉴权)、路由注册等核心模块,并提供了详细的技术栈和项目结构说明。文章还介绍了环境初始化、实体定义、接口实现等关键步骤,最后展示了可拓展方向(如接入Casbin、Swagger等)和学习收获。这是一个完整可扩展的Golang后端项目模板,适合管理后台、微服务等场景。

gopher123的博客 1602

go+vue——基于gin框架和gorm的web开发实战

go+vue——基于gin框架和gorm的web开发实战

zsssss333的博客 3006
上一篇: go环境搭建gin
下一篇: DevOps和主流devOps组件
牧竹子
博客等级 码龄17年 572粉丝 233原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值