1.项目介绍

基于Go语言和gin框架开发的个人博客系统,该项目可以帮助你的golang应用快速实现前端和后端系统。

aiwen-gin-blog是一个基于go语言和gin框架开发的前端和后台管理系统,集成动态路由,日志,文件配置加载,鉴权等功能,让您把更多时间专注在业务开发上。

2.技术选型

  • 前端:用基于layui构建基础页面。
  • 后端:用Gin快速搭建基础restful风格API,Gin是一个go语言编写的Web框架。
  • 数据库:采用MySQL,使用gorm实现对数据库的基本操作。
  • 缓存:使用Redis实现记录Session登录限制。
  • 配置文件:使用fsnotifyviper实现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项目实战相关推荐

  1. Web项目实战 | 购物系统v2.0 | 开发记录(五)使用base64编码实现头像修改 | 用户个人信息修改 | JQuery动态提示

    文章目录 以往记录 一.运行环境 二.实现头像修改 三.用户个人信息修改 四.Bug & DeBug 以往记录 Web项目实战 | 购物系统v2.0 | 开发记录(一)需求分析 | 技术选型 ...

  2. Web项目实战 | 购物系统v2.0 | 开发记录(九)Controller层返回数据的封装 | 商品批量操作 | 五表联立实现商品搜索

    --若发现文章内容有误,敬请指正,望不吝赐教,感谢! 文章目录 以往记录 运行环境 一.设计Bean用于Controller层返回数据 二.商品批量操作 2.1 批量操作的前端设计 2.2 批量操作的 ...

  3. Java Web项目实战案例一

    Java Web项目实战案例一 一.主要开发工具如下: 1.物理机:windows 10 2.apache-maven-3.5.3 3.jdk1.8.0_161 4.Intellij 二.构建过程 项 ...

  4. beego框架 golang web项目-个人博客系统

    beego框架 golang web项目-个人博客系统 beego个人博客系统功能介绍 首页 分页展示博客 博客详情 评论 文章专栏 分类导航 资源分享 时光轴点点滴滴 关于本站 后台管理 登录 系统 ...

  5. Web项目实战分享——小米官网

    Web项目实战分享--小米官网 大约每个学习过前端的学习者来说,都接触过web项目的实战,业内最真实的的,应该是自己独立编写一个网页项目,当然如果你是大佬的话,这只是小菜一碟,而如果你是小白或正在学习 ...

  6. python就业班 miniweb框架_Python“mini-web”项目实战再度来袭!同学们厉害了

    4月30日,传智专修学院Python应用开发方向的同学们迎来本学期首次项目答辩,此次项目聚焦专业知识,以 "mini-web" 为主题,集中展示多样化的项目作品. 本次项目内容分为 ...

  7. SSM框架搭建及项目实战

    (可通过图片水印查看博客地址) 1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Ex ...

  8. 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 ...

  9. IDEA IntelliJ 如何新建一个不用任何框架的web项目

    step 1 step 2 step 3 step 4 step 5 step 6 结果: 导包 找到jsp-api.jar和servlet-api.jar 建包(web项目不建议直接在src目录下新 ...

  10. Spring Boot 学习[四] web项目实战训练(增删改查,分页,排序)

    Spring boot非常适合Web应用程序开发.您可以轻松创建自包含的HTTP应用.web服务器采用嵌入式Tomcat,或者Jetty等. 几点说明: Spring boot开发web项目,通常打成 ...

最新文章

  1. linux下mysql的root密码忘记解决方案
  2. android按钮点击事件(多种方法实现)
  3. Android Studio 单刷《第一行代码》系列 06 —— Fragment 生命周期
  4. C++学习笔记5[函数]
  5. 云原生时代 给予.NET的机会
  6. (单元测试)JavaBeans的技巧
  7. 听说做开发的工资随随便便就上10k?
  8. 条令考试小程序辅助器_应知应会|条令纲要学习微课堂(六)
  9. 蓝桥杯嵌入式板-解决LCD使LED亮灭混乱的办法
  10. python c++ 批量命名文件夹内的图像
  11. PDG转图像、PDF的若干方法
  12. dh协议c语言代码,openssl开源程序dh算法解析之dh_ameth.c
  13. Linux系统进程及作业管理
  14. 2021好看小说推荐(持续更新中)
  15. 电商核心业务功能测试分析
  16. windows下编译64位x264
  17. firewalld防火墙配置IP伪装和端口转发
  18. win10千万不要重置_ Win10重置此电脑功能详细使用教程
  19. 解决microk8s 报错error: You must be logged in to the server (Unauthorized)
  20. html直线箭头,HTML中利用div+CSS实现简单的箭头图标的代码

热门文章

  1. 每日方法分享:手机识别图片文字怎么弄?
  2. 有道智云翻译API + retrofit实现在线翻译Android app
  3. Unity 大面积花草风吹动效果以及编辑
  4. Linux服务器安全防护
  5. 目标客户画像_4 种类型 + 10 大步骤,详解用户画像
  6. Matlab|模拟电动汽车的充放电【充电顺序,波动发电,电池缓冲】
  7. 免费好用的节假日API
  8. 一拍是多少秒 计算机制音乐,音乐一个节拍是几秒钟?
  9. 洛谷再分肥宅水c语言,【菜鸟进阶之路】P5706【深基2.例8】再分肥宅水 - 洛谷
  10. C++洛谷题解(6)