refactor(main): 重构主应用结构以提高模块化
- 将main.go中的初始化逻辑提取到新的app包中 - 创建bootstrap包来处理配置加载和数据库初始化 - 添加middleware包来管理CORS中间件 - 创建router包来处理路由配置 - 简化main函数,只保留应用启动逻辑 - 使用依赖注入模式组织服务和处理器
This commit is contained in:
7
memora-api/internal/bootstrap/config.go
Normal file
7
memora-api/internal/bootstrap/config.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package bootstrap
|
||||
|
||||
import "memora-api/internal/config"
|
||||
|
||||
func LoadConfig(path string) (*config.Config, error) {
|
||||
return config.LoadConfig(path)
|
||||
}
|
||||
17
memora-api/internal/bootstrap/database.go
Normal file
17
memora-api/internal/bootstrap/database.go
Normal file
@@ -0,0 +1,17 @@
|
||||
package bootstrap
|
||||
|
||||
import (
|
||||
"memora-api/internal/config"
|
||||
"memora-api/internal/model"
|
||||
|
||||
"gorm.io/driver/mysql"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
func InitDB(cfg *config.Config) (*gorm.DB, error) {
|
||||
return gorm.Open(mysql.Open(cfg.Database.DSN()), &gorm.Config{})
|
||||
}
|
||||
|
||||
func AutoMigrate(db *gorm.DB) error {
|
||||
return db.AutoMigrate(&model.Word{}, &model.MemoryRecord{})
|
||||
}
|
||||
Reference in New Issue
Block a user