# GoFrame 的 gf-demos 教程 {#goframe-的-gf-demos-教程}
本文介绍 GoFrame 框架提供的 gf-demos 项目的搭建教程。GoFrame 作为 Golang 生态中的 web 框架,非常强大,作者对标 java 中的 spring,可见作者的野心之大,值得我们认真学习下该项目。gf-demos 可以作为 GoFrame 的入门 demo。
# 1. 下载代码 {#_1-下载代码}
git clone https://github.com/gogf/gf-demos
# 2. 创建数据库 {#_2-创建数据库}
create database gframeDemo default CHARSET utf8mb4 collate utf8mb4_unicode_ci;
use gframeDemo;
CREATE TABLE `user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`passport` varchar(45) NOT NULL COMMENT '用户账号',
`password` varchar(45) NOT NULL COMMENT '用户密码',
`nickname` varchar(45) NOT NULL COMMENT '用户昵称',
`create_at` datetime DEFAULT NULL COMMENT '创建时间',
`update_at` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
# 3. 创建配置文件 {#_3-创建配置文件}
cp config/config.example.toml config/config.toml
vi config/config.toml:
# HTTP Server.
[server]
Address = ":8199"
ServerRoot = "public"
ServerAgent = "gf-demos"
LogPath = "/tmp/log/gf-demos/server"
NameToUriType = 2
RouteOverWrite = true
# Logger configurations.
[logger]
Path = "/tmp/log/gf-demos"
Level = "all"
Stdout = true
# Template view configurations.
[viewer]
Path = "template"
DefaultFile = "index.html"
Delimiters = ["${", "}"]
# Database configurations.
[database]
link = "mysql:root:123456@tcp(127.0.0.1:3306)/gframeDemo"
debug = true
# 数据库日志对象配置
[database.logger]
Path = "/tmp/log/gf-demos/sql"
Level = "all"
Stdout = true
# HTTP basic authentication passport/password for swagger api page.
[swagger]
user = "123"
pass = "123"
# 4. 运行 {#_4-运行}
可以使用 IDE 或命令行运行。
- 命令行方式运行
- 编译
项目根目录执行如下命令,编译生成可执行文件 gf-demos
go build - 运行 项目根目录执行如下命令, 运行服务:
./gf-demos
# 5. 说明 {#_5-说明}
- gf-demos 提供的通用 curd 接口非常强大,可以实现对数据库任意表的 curd 操作。
- gf-demos 还演示了一个聊天室功能的实现, 应用了 websocket。