gin框架学习-main

1.安装gin包

go get -u github.com/gin-gonic/gin

项目组织目录:

  1. main: 项目主入口, 初始化gin和数据库等, 加载配置文件
  2. controller: 负责路由过来的请求内部业务处理
  3. service: 负责具体业务, 减轻controller负荷
  4. dao: 负责对接数据库表的增删改查 (中间使用xorm对接)
  5. model: 对应数据实体
  6. param: 返回数据实体
  7. config: 项目所需配置,(mysql, redis, fastDFS等配置)
  8. tool: 项目工具(图片上传, 所有业务都可以使用公共的工具)

main

func main(){
//项目启动, 会加载配置文件
	config, err := tool.ParseConfig("./config/app.json")
	if err != nil {
		panic(err)
	}


    //根据配置文件, 获取数据库相关配置, 连接数据库, 自动建表等
	//初始化数据库
	_,err =tool.OrmEngine(config)
	if err!=nil{
		fmt.Println("数据库错误 err:",err)
		return
	}
	fmt.Println("mysql 数据库连接成功")

    
	//初始化redis配置
	_, err = tool.InitRedisStore()
	if err!=nil {
		fmt.Println("redis 数据库连接失败, err:",err)
		return
	}
	fmt.Println("redis 连接 认证通过")

	///设置运行模式
	gin.SetMode(gin.DebugMode)

	///开始服务 默认启动, 会自动加载默认中间件
	app := gin.Default()

	//设置全局跨域访问(中间件)  要在路由前添加跨域中间件
	app.Use(Cors())

	//初始化session
	tool.InitSession(app)

	//注册路由服务, 请求服务过来后, 都会通过这个方法进行路由
	registerRouter(app)

	///运行服务
	app.Run(config.AppHost+":"+config.AppPort)

}

//路由设置
func registerRouter(router * gin.Engine)  {
	new(controller.HelloController).Router(router)
	new(controller.MemberController).Router(router)

}

猜你喜欢

转载自blog.csdn.net/Batac_Lee/article/details/109625094