栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

【Go实战 | 电商平台】(2) 项目结构及配置文件初始化

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Go实战 | 电商平台】(2) 项目结构及配置文件初始化

文章目录
  • 1. 必备环境与推荐软件
    • 1.1 必备环境
    • 1.2 推荐软件
  • 2. 项目初始化
  • 3. 配置文件初始化
    • 3.1 config.ini
    • 3.2 conf.go
    • 3.3 main函数

1. 必备环境与推荐软件 1.1 必备环境
  • mysql
  • redis
  • golang
1.2 推荐软件
  • goland
  • navicat
  • runapi
2. 项目初始化
  • 创建项目

  • 创建文件夹

  • 项目结构
mall/
├── api
├── cache
├── conf
├── middleware
├── model
├── pkg
│  ├── e
│  ├── util
├── routes
├── serializer
└── service
- api : 用于定义接口函数
- cache : 放置redis缓存
- conf : 用于存储配置文件
- middleware : 应用中间件
- model : 应用数据库模型
- pkg/e : 封装错误码
- pkg/util : 工具函数
- routes : 路由逻辑处理
- serializer : 将数据序列化为 json 的函数
- service : 接口函数的实现
  • go mod 管理包依赖

  • 换源

3. 配置文件初始化

在conf文件夹下创建config.ini和conf.go

3.1 config.ini

先进行mysql的配置

#debug开发模式,release生产模式
[service]
AppMode = debug
HttpPort = :3000

[mysql]
Db = mysql
DbHost = 127.0.0.1
DbPort = 3306
DbUser = root
DbPassWord = root
DbName = mail_db
3.2 conf.go
  • 配置文件
var (
	AppMode  			string
	HttpPort 			string

	Db         			string
	DbHost     			string
	DbPort     			string
	DbUser     			string
	DbPassWord 			string
	DbName     			string
)
  • 读取配置文件
func Init() {
	//从本地读取环境变量
	file, err := ini.Load("./conf/config.ini")
	if err != nil {
		fmt.Println("配置文件读取错误,请检查文件路径:", err)
	}
	LoadServer(file)
	LoadMysqlData(file)
	//MySQL
	path := strings.Join([]string{DbUser, ":", DbPassWord, "@tcp(", DbHost, ":", DbPort, ")/", DbName, "?charset=utf8&parseTime=true"}, "")
	model.Database(path)
}
  • 加载配置
func LoadServer(file *ini.File) {
	AppMode = file.Section("service").Key("AppMode").String()
	HttpPort = file.Section("service").Key("HttpPort").String()
}

func LoadMysqlData(file *ini.File) {
	Db = file.Section("mysql").Key("Db").String()
	DbHost = file.Section("mysql").Key("DbHost").String()
	DbPort = file.Section("mysql").Key("DbPort").String()
	DbUser = file.Section("mysql").Key("DbUser").String()
	DbPassWord = file.Section("mysql").Key("DbPassWord").String()
	DbName = file.Section("mysql").Key("DbName").String()
}
3.3 main函数

在main函数中进行初始化配置

还有一些配置没有写进去的。redis、七牛云的配置啥的。

我们后面用到的时候才补上去吧。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/909621.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号