go web项目开发第一天

本文介绍了使用Golang构建Web项目的脚手架搭建过程,包括CLD分层(Controller、Logic、DAO),以及其他层如Logger、Model、Setting和Routes。在CLD分层中详细阐述了各层的职责,如Controller负责路由和参数校验,Logic处理业务逻辑,DAO层则处理数据存储。此外,还提到了初始化脚手架的步骤,涉及配置、日志、数据库和路由设置。
摘要由CSDN通过智能技术生成

golang web项目脚手架搭建

1、CLD分层:
a、controller层:控制层,服务的入口,负责处理路由,参数校验,请求转发。
b、logic层:业务逻辑层。通过了controller层到达这里的所有请求参数一定是合法的。业务逻辑和业务流程都在这一层。
c、dao层:主要负责与数据、存储。将下层存储以函数形式、接口形式暴露给logic层。

2、其他层
a、logger层:存放日志
b、model层:程序功能实现文件、以及数据库sql创建表语句等。
c、setting层:配置文件
d、routes层:路由层

初始化脚手架
1、main函数每次启动项目都要初始化配置、日志文件logger、mysql文件、redis、以及路由的启动

func main() {
   
	if err := setting.Init();err != nil{
   
		//错误语句
		return
	}
	
	if err := logger.Init(setting.Conf.LogConfig); err!=nil{
   
		//错误语句
		return
	}
	defer zap.L().Sync() //此处为main函数结束后释放日志文件的语句
	if err := mysql.Init(setting.Conf.MySQLConfig); err != nil{
   
		//错误语句
		return
		}
	defer mysql.Close() //main函数结束后释放 mysql连接,否则可能会放生内存泄漏
	if err := redis.Init(setting.Conf.RedisConfig); err != nil{
   
	//错误语句
	return
	}
	defer redis.Close() //原理同上
	if err := snowflake.Init(setting.Conf.StartingTime,setting.Conf.MachineID);err!=nil{
   
	
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值