Go-Masonry/Mortar 项目教程
1. 项目目录结构及介绍
mortar/
├── api/
│ ├── handlers/
│ ├── middlewares/
│ ├── models/
│ └── validators/
├── cmd/
│ └── mortar/
├── config/
│ └── config.yaml
├── docs/
├── internal/
│ ├── app/
│ ├── server/
│ └── services/
├── scripts/
├── test/
├── .gitignore
├── go.mod
├── go.sum
└── README.md
目录结构介绍
-
api/: 包含API相关的处理程序、中间件、模型和验证器。
- handlers/: 处理HTTP请求的函数。
- middlewares/: 中间件函数,用于处理请求前后的逻辑。
- models/: 数据模型定义。
- validators/: 数据验证器。
-
cmd/: 包含项目的启动文件。
- mortar/: 主要的启动文件目录。
-
config/: 包含项目的配置文件。
- config.yaml: 项目的配置文件。
-
docs/: 包含项目的文档文件。
-
internal/: 包含项目的内部逻辑。
- app/: 应用程序的核心逻辑。
- server/: 服务器相关的逻辑。
- services/: 服务相关的逻辑。
-
scripts/: 包含项目的脚本文件。
-
test/: 包含项目的测试文件。
-
.gitignore: Git忽略文件。
-
go.mod: Go模块定义文件。
-
go.sum: Go模块依赖的校验文件。
-
README.md: 项目的说明文件。
2. 项目启动文件介绍
项目的启动文件位于 cmd/mortar/main.go
。该文件是整个项目的入口点,负责初始化配置、启动服务器等操作。
package main
import (
"github.com/go-masonry/mortar/internal/app"
"github.com/go-masonry/mortar/config"
)
func main() {
// 加载配置
cfg := config.LoadConfig()
// 初始化应用程序
app := app.NewApp(cfg)
// 启动应用程序
app.Run()
}
启动文件功能
- 加载配置: 通过
config.LoadConfig()
函数加载项目的配置文件。 - 初始化应用程序: 通过
app.NewApp(cfg)
初始化应用程序实例。 - 启动应用程序: 通过
app.Run()
启动应用程序。
3. 项目配置文件介绍
项目的配置文件位于 config/config.yaml
。该文件包含了项目的各种配置选项,如服务器端口、数据库连接信息等。
server:
port: 8080
database:
host: "localhost"
port: 5432
user: "user"
password: "password"
name: "dbname"
logging:
level: "info"
配置文件内容
-
server: 服务器配置。
- port: 服务器监听的端口。
-
database: 数据库配置。
- host: 数据库主机地址。
- port: 数据库端口。
- user: 数据库用户名。
- password: 数据库密码。
- name: 数据库名称。
-
logging: 日志配置。
- level: 日志级别。
通过这些配置,项目可以在不同的环境中运行,并且可以根据需要进行调整。