// main.go package main import ( "Quincy_admin/config" _ "Quincy_admin/docs" "Quincy_admin/register" "log" "github.com/gin-gonic/gin" ) // @title Quincy_admin // @version 1.0 // @description 打造一款综合性接口平台. // @termsOfService http://swagger.io/terms/ // @contact.name API Support // @contact.url http://www.swagger.io/support // @contact.email support@swagger.io // @license.name Apache 2.0 // @license.url http://www.apache.org/licenses/LICENSE-2.0.html // @host localhost:8080 // @BasePath /quin // @securityDefinitions.apikey ApiKeyAuth // @in header // @name Authorization func main() { //===================================加载配置==================================== cfg := config.LoadConfig() // 根据配置决定运行模式 if cfg.Server.Mode == "release" { gin.SetMode(gin.ReleaseMode) } else { gin.SetMode(gin.DebugMode) } // =================================初始化服务==================================== services, err := register.InitializeServices(cfg) if err != nil { log.Fatalf("Failed to initialize services: %v", err) } defer services.Cleanup() // =================================创建Gin引擎==================================== router := gin.New() router.Use(gin.Recovery()) // 注册所有中间件和路由 register.MiddlewaresAndRoutes(services.DB, router, services.CronManager) // 启动服务器 if err := router.Run(":" + cfg.Server.Port); err != nil { log.Fatalf("Failed to start server: %v", err) } }