一、工程结构

请先了解下项目目录中各个目录的职责及作用:工程目录设计🔥

二、工程配置

1、工具配置

工具配置指的是GoFrame框架提供的开发工具的配置,仅用于项目开发使用。该配置与业务配置是独立的,存放于项目根目录的hack目录下,通常以config.yaml命名。默认的项目模板已经自动生成了该文件,只是该文件没有任何的配置内容。工具配置文件可以提交到版本库中。更详细的工具命令及配置介绍请参考章节:开发工具

2、业务配置

业务配置指的是业务项目运行所需的配置,用于业务项目部署运行,部署不同的环境,业务配置往往不同。业务配置文件存放于manifest/config目录下,在多人协作开发中,业务配置文件往往不提交到版本库中,否则会引起本地的配置文件覆盖。

三、配置对象

业务配置可以通过框架独立的配置组件来访问,大多数场景下,我们通过g.Cfg()单例对象访问。通过g.Cfg()单例对象将会自动读取manifest/config目录下的配置文件,配置组件的功能非常强大,更详细的介绍请参考:配置管理

四、单例对象

虽然框架的组件是模块化、低耦化设计的,但为了给与业务项目使用的方便,框架同时提供了一些常用的单例对象获取,例如:g.Cfg()/g.DB()/g.Log()等等,更详细的介绍请参考章节:对象管理

单例对象的便捷之处在于,它会自动通过g.Cfg()配置对象自动获取既定配置项下的配置,并自动初始化单例对象。不同的单例对象,自动读取的配置项不同,具体可以参考各个组件的配置管理章节。

以项目模板为例,默认提供了两个配置项,serverlogger。前者是HTTP Server的配置项,后置是日志组件的配置项。前者通过单例对象g.Server()自动读取初始化,后者通过单例对象g.Log()自动读取初始化。

快速开始-配置管理 - 图1