# Book Api Server 从一个简单的项目开启项目之旅 + 项目介绍: Gin + GORM 开发简单的Book API Server + 从写脚本开始 与 学会合理使用包来组织你的项目工程 + 使用mvc的模式来 组织你的业务代码 + 完善项目: 项目日志, Api返回与业务异常 详细说明: + 项目课整体介绍 + 软件开发生命周期流程介绍 + 项目介绍: Gin + GORM 开发简单的API Server + 如何快速使用Gin开发Api Server + 如何使用gorm访问数据库 + 如何管理你项目中的配置 + 如何使用MVC模式编写你的业务控制器 + 如何使用zerolog打印程序日志 + 如何为你程序提供统一的Api Response + 如何自定义业务异常 ## 项目准备 ![alt text](image.png) ## v2 版本 ```go // 初始化数据库, 能过与数据库交互的 连接池对象: db func setupDatabase() *gorm.DB { dsn := "root:123456@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local" db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{}) if err != nil { panic("failed to connect database") } db.AutoMigrate(&Book{}) // 自动迁移 return db.Debug() } ``` ### 剥离配置 剥离程序配置,让程序可以通过外部加载配置: config 包: 用来管理程序的配置