GoFrame:如何简单地搭建一个简单地微服务

一切资料来源于GoFrame官网, 感兴趣的, 可以直接去官网查阅相关资料。

首先下载框架工具, 下载地址:https://github.com/gogf/gf/releases

然后进入你想要放置的项目文件夹, 执行命令行

bash 复制代码
gf init {project_name} #project_name为你的项目名

执行完后项目结构如图所示

然后打开mysql数据库, 新建数据库, 库中新建一张表(一般都会结合数据存储去做服务, 所以这里结合数据库说明)

然后再项目文件中添加数据库配置

然后再命令行执行如下命令, 从数据库中反向映射模型

bash 复制代码
gf gen pbentity

即可在项目中的manifest/protobuf中生成pbentity模型文件夹, 生成的proto文件, proto为Google官方开发的数据格式, 数据传输比json高效, 感兴趣的话, 可以自行了解。

然后再protobuf中撰写一个接口文件

然后执行如下命令生成接口和控制器文件

bash 复制代码
gf gen pb

此时会生成对应的接口文件如下:

然后执行如下命令, 反向映射dao模型文件

bash 复制代码
gf gen dao

可以看到dao中和model中多了t_person.go等文件

然后去logic编写服务给controller调用, 在logic中构建person.go文件

然后执行命令生成service接口

bash 复制代码
gf gen service

可以看到service中生成了person.go文件, 里面内容是申明了person服务的接口, 然后再logic/person/person.go中注册服务接口

然后再controller中重写person的控制器方法调用service即可完成整个api调用链路

最后回到internal/cmd/cmd.go中构建grpc命令, 并且注册控制器成为路由, 即可完成整个服务的构建

然后启动main.go, 即可启动整个服务了, 启动结果如下:

相关推荐
武子康14 分钟前
商业比较词进入 AI Overview:Semrush 60 万关键词研究能说明什么
人工智能·ai·架构·agent·claude·codex·semrush
m0_5873830029 分钟前
全民健身解决方案软件开发实战:从架构设计到落地指南
java·spring boot·spring·架构·需求分析
沪上企服通2 小时前
数电发票全生命周期下的企业财税中台:从“开票工具“到“实时风控“的架构跃迁
架构
lytao1234 小时前
单体、微服务、Serverless:架构要匹配问题
微服务·架构·serverless·软件工程
javaDocker5 小时前
金融级 AIOps 架构跃迁(从“1-5-10“快恢目标到 AI Agent 告警收敛的完整技术实践)
人工智能·金融·架构
数字孪生视频孪生6 小时前
三维实时重构异构底座 核工危化无感定位跨境轨迹一屏统揽
大数据·运维·人工智能·重构·架构
数脉6 小时前
让每一条数据都有来龙去脉:我们的列级数据血缘平台功能全景
架构
Forerror20267 小时前
深入理解大模型网关是什么:MAI Gateway架构与核心价值解读
架构·gateway
阿里云云原生7 小时前
遇到多 Agent 协作效率低?试试引入“讨论共识”与“横向通信”机制
云原生
ZStack开发者社区7 小时前
虚拟化观察 第 001 期:ZSvirt 核心 IaaS 引擎开源,VMware Explore 2026 开幕,Proxmox VE 8 正式 EOL
架构·开源·云计算·vmware·云基础设施·proxmox