网站首页 > 博客文章 正文
最近要做一个简单的微信小程序,需要后端提供几个查询、新增的接口。由于之前学了一段时间Go语言,便想着后端采用Go语言,前端采用uniapp。那么后端选什么框架好呢?用Gin、Beego吗?最后思来想去,还是选择了go-zero,主要是因为它开发起来相对简单一些。
安装goctl
我的开发环境是Windows 10,那么先进入到powershell,先设置代理:
|
|
然后执行安装命令go install
github.com/zeromicro/go-zero/tools/goctl@latest,安装完后,执行goctl便可看到如下命令提示
新建项目
我们跟着官网,创建所需项目,
|
|
至此,项目便初始化完成。
从数据生成模型
goctl命令直接可以连接数据库生成相应的表model,并生成简单的CRUD代码,官方的用法
|
|
直接带上实际的环境参数即可生成
编写api文件,生成api代码
在项目初始化时,命令工具会为我们生成一个*.api的文件,同时,也会生成一个接口模版
我们安装这个模板进行编码
api文件编写好后,便可通过goctl生成代码了,
|
|
关于api描述文件的语法格式,可以去go-zero官网了解一下,这里暂不赘述
编写业务逻辑
go-zero为我们生成好了基础代码,现在,我们只需要把这些代码稍作调整,将其组装起来便可使用了。
配置数据库连接
首先,我们去wedding-api.yaml配置数据库信息
然后到Config.go去配置连接属性
|
|
继续到servicecontext.go进行依赖关联
这里的model是*model.go里面的接口
接下来,就是去loginlogic.go完成具体的逻辑了,因为我这里只是一条简单的数据查询,不需要有过多的逻辑,但是,goctl默认生成的代码中,也无法满足我的要求,那么,便只有修改一下原有逻辑,或者重新写个查询方法,这里,我是另外写了一个查询方法
|
|
进入到logic文件夹里找到对应的实现业务逻辑的go文件,添加业务逻辑
|
|
取数逻辑简单地调整了一下,接下来便启动起来看看效果
访问一下接口,这里的接口路径可以到routes.go进行查看
上面是返回单条数据,我们再来模拟多条数据返回
|
|
猜你喜欢
- 2025-04-30 Go爱好者周刊:第 64 期—goup这个工具了解下
- 2025-04-30 网络游戏玩家为什么需要使用代理IP?
- 2025-04-30 Golang下载安装与配置(golang怎么安装)
- 2025-04-30 完美正式代理CS:GO,热泪盈眶啊,终于不用被全球服坑了!
- 2025-04-30 CS:GO国服新传言:完美或代理 官方不予置评
- 2025-04-30 seata-golang 接入指南(seatam)
- 2025-04-30 代理ip是干嘛的?使用代理ip有什么用处?
- 2025-04-30 go-admin开源项目,快速搭建一个管理后台系统,直接二次开发上线
- 2025-04-30 网上免费的代理IP是怎么来的呢?(网络免费代理)
- 2025-04-30 Go 学习:从环境搭建到写一个 Web 服务
你 发表评论:
欢迎- 368℃用AI Agent治理微服务的复杂性问题|QCon
- 367℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 359℃初次使用IntelliJ IDEA新建Maven项目
- 352℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 347℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 345℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 343℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)