HelloWorld

13 阅读1分钟

初始化项目模版

创建demo项目,执行命令
gf init demo -u
执行过程 image.png 创建demo项目成功,目录树如下 image.png 运行项目模板,执行如下命令
cd demo && gf run main.go

image.png 默认情况下项目启动后会将web端口号、开启OpenAPI接口文档、展示Swagger接口文档页面等关键信息打印到终端。默认会将所有路由信息打印到终端,该项目初始化会自带一个/hello的路由。

程序启动

main.go
跟其他项目类似都是通过main.go作为程序入口,然后调用internal/cmd包中对应的命令引导程序来启动,在internal/cmd包中有Main对象,程序通过调用Main对象的Run方法来启动

引导启动

Main对象的Run命令主要是做系统启动引导,将需要动态初始化的逻辑放到Run方法中,项目模版默认会创建一个HTTP Server,然后分组注册路由,启动HTTP Server并阻塞运行,同时也会异步监听系统信号,直至收到退出信号后,优雅关闭连接随后退出进程。