Gin框架Go Web项目实战
1.项目介绍
基于Go语言和gin框架开发的个人博客系统,该项目可以帮助你的golang应用快速实现前端和后端系统。
aiwen-gin-blog是一个基于go语言和gin框架开发的前端和后台管理系统,集成动态路由,日志,文件配置加载,鉴权等功能,让您把更多时间专注在业务开发上。
2.技术选型
- 前端:用基于
layui
构建基础页面。 - 后端:用
Gin
快速搭建基础restful风格API,Gin
是一个go语言编写的Web框架。 - 数据库:采用
MySQL
,使用gorm
实现对数据库的基本操作。 - 缓存:使用
Redis
实现记录Session登录限制。 - 配置文件:使用
fsnotify
和viper
实现yaml
格式的配置文件。 - 日志:使用
zap日志库
实现日志记录。
3.项目架构
3.1 系统架构图
3.2 目录结构
.
├── conf (配置文件)
│ └── config.yaml
├── controller(控制类)
│ ├── admin.go
│ ├── auth.go
│ ├── base.go
│ ├── blog.go
│ └── controller.go
├── dao (数据库连接)
│ └── mysql.go
├── log(日志文件)
├── logger(zap logger工具类)
│ └── logger.go
├── main.go (入口文件)
├── models(GORM 访问数据库)
│ ├── base.go
│ ├── category.go
│ ├── comment.go
│ ├── config.go
│ ├── post.go
│ ├── response.go
│ └── user.go
├── routers (路由)
│ └── routers.go
├── settings (文件配置管理)
│ └── settings.go
├── static (静态文件)
├── templates(页面文件)
└── util(工具类)├── RediStore.go├── SessionStore.go├── functions.go├── localtime.go└── pager.go
4.类图设计
5.UML时序图设计
6. 项目实战
6.1 创建数据库
CREATE DATABASE IF NOT EXISTS aiwen_gin_blog;
6.2 初始化数据
- 通过用户名和密码登录
$ mysql -uroot -p12345678
- 切换数据库
mysql> use aiwen_gin_blog;
- 初始化数据
mysql>source /Users/zhengwenjie/gopath/src/aiwen-gin-blog/aiwen_gin_blog.sql
6.3 服务器启动
6.4 服务登录
6.4.1 后端管理系统
6.4.2 前端门户网站
6.5 代码实战操作
视频课程:基于gin框架的Go Web开发项目实战【共90课时】_Go语言课程-51CTO学堂
接下来,带领大家0-1实战操作,来完成Go项目开发。
Gin框架Go Web项目实战相关推荐
- Web项目实战 | 购物系统v2.0 | 开发记录(五)使用base64编码实现头像修改 | 用户个人信息修改 | JQuery动态提示
文章目录 以往记录 一.运行环境 二.实现头像修改 三.用户个人信息修改 四.Bug & DeBug 以往记录 Web项目实战 | 购物系统v2.0 | 开发记录(一)需求分析 | 技术选型 ...
- Web项目实战 | 购物系统v2.0 | 开发记录(九)Controller层返回数据的封装 | 商品批量操作 | 五表联立实现商品搜索
--若发现文章内容有误,敬请指正,望不吝赐教,感谢! 文章目录 以往记录 运行环境 一.设计Bean用于Controller层返回数据 二.商品批量操作 2.1 批量操作的前端设计 2.2 批量操作的 ...
- Java Web项目实战案例一
Java Web项目实战案例一 一.主要开发工具如下: 1.物理机:windows 10 2.apache-maven-3.5.3 3.jdk1.8.0_161 4.Intellij 二.构建过程 项 ...
- beego框架 golang web项目-个人博客系统
beego框架 golang web项目-个人博客系统 beego个人博客系统功能介绍 首页 分页展示博客 博客详情 评论 文章专栏 分类导航 资源分享 时光轴点点滴滴 关于本站 后台管理 登录 系统 ...
- Web项目实战分享——小米官网
Web项目实战分享--小米官网 大约每个学习过前端的学习者来说,都接触过web项目的实战,业内最真实的的,应该是自己独立编写一个网页项目,当然如果你是大佬的话,这只是小菜一碟,而如果你是小白或正在学习 ...
- python就业班 miniweb框架_Python“mini-web”项目实战再度来袭!同学们厉害了
4月30日,传智专修学院Python应用开发方向的同学们迎来本学期首次项目答辩,此次项目聚焦专业知识,以 "mini-web" 为主题,集中展示多样化的项目作品. 本次项目内容分为 ...
- SSM框架搭建及项目实战
(可通过图片水印查看博客地址) 1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Ex ...
- Web项目实战 | 购物系统v1.0 | 开发记录(一) | 大学生闲置物品交易系统 | 选择页面模板(附资源),使用 JQuery AJAX实现注册、登陆
文章目录 运行环境 1. 前言 2. 挑选模板 2.1 前端模板 2.2 后端模板 2.3 总结 3. 实现注册与登陆 3.1 项目结构 3.2 注册 3.2.1 JDBC连接池连接 3.2.2 da ...
- IDEA IntelliJ 如何新建一个不用任何框架的web项目
step 1 step 2 step 3 step 4 step 5 step 6 结果: 导包 找到jsp-api.jar和servlet-api.jar 建包(web项目不建议直接在src目录下新 ...
- Spring Boot 学习[四] web项目实战训练(增删改查,分页,排序)
Spring boot非常适合Web应用程序开发.您可以轻松创建自包含的HTTP应用.web服务器采用嵌入式Tomcat,或者Jetty等. 几点说明: Spring boot开发web项目,通常打成 ...
最新文章
- linux下mysql的root密码忘记解决方案
- android按钮点击事件(多种方法实现)
- Android Studio 单刷《第一行代码》系列 06 —— Fragment 生命周期
- C++学习笔记5[函数]
- 云原生时代 给予.NET的机会
- (单元测试)JavaBeans的技巧
- 听说做开发的工资随随便便就上10k?
- 条令考试小程序辅助器_应知应会|条令纲要学习微课堂(六)
- 蓝桥杯嵌入式板-解决LCD使LED亮灭混乱的办法
- python c++ 批量命名文件夹内的图像
- PDG转图像、PDF的若干方法
- dh协议c语言代码,openssl开源程序dh算法解析之dh_ameth.c
- Linux系统进程及作业管理
- 2021好看小说推荐(持续更新中)
- 电商核心业务功能测试分析
- windows下编译64位x264
- firewalld防火墙配置IP伪装和端口转发
- win10千万不要重置_ Win10重置此电脑功能详细使用教程
- 解决microk8s 报错error: You must be logged in to the server (Unauthorized)
- html直线箭头,HTML中利用div+CSS实现简单的箭头图标的代码
热门文章
- 每日方法分享:手机识别图片文字怎么弄?
- 有道智云翻译API + retrofit实现在线翻译Android app
- Unity 大面积花草风吹动效果以及编辑
- Linux服务器安全防护
- 目标客户画像_4 种类型 + 10 大步骤,详解用户画像
- Matlab|模拟电动汽车的充放电【充电顺序,波动发电,电池缓冲】
- 免费好用的节假日API
- 一拍是多少秒 计算机制音乐,音乐一个节拍是几秒钟?
- 洛谷再分肥宅水c语言,【菜鸟进阶之路】P5706【深基2.例8】再分肥宅水 - 洛谷
- C++洛谷题解(6)