为了账号安全,请及时绑定邮箱和手机立即绑定

结构上定义的 Golang gRPC 数据库序列化密钥格式

结构上定义的 Golang gRPC 数据库序列化密钥格式

Go
至尊宝的传说 2022-06-01 15:47:02
我想将 gRPC 编译器直接生成的 go 结构用于数据库事务,但问题是jsongRPC 仅设置了序列化字段。有没有办法设置额外的序列化密钥(如下所示),或者是否有另一种特定于 golang 的方式来告诉数据库驱动程序(sqlx在上面database/sql)json应该使用密钥格式?一些示例 - gRPC 编译器创建以下结构:type HelloWorld struct {  TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`...我想拥有的:type HelloWorld struct {  TraceId string `db:"trace_id" protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`...一个临时的解决方法是编写使用别名的 sql 查询(traceid而不是trace_id在本示例中),但感觉不一致并增加了很多复杂性。
查看完整描述

1 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

我认为目前没有内置的方法可以做到这一点。但是,您可能有兴趣关注此线程:https ://github.com/golang/protobuf/issues/52

除此之外,我认为您可以为数据库访问创建另一个结构并使映射显式,这可能更具可读性。


查看完整回答
反对 回复 2022-06-01
  • 1 回答
  • 0 关注
  • 145 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号