gpt4 book ai didi

java - protobuf - 带有特殊字符的字段名称

转载 作者:行者123 更新时间:2023-12-01 08:57:37 29 4
gpt4 key购买 nike

我正在尝试手动建模一个表示 JSON 的 .proto 文件,该文件的字段名称之一带有点和 @ 符号。我收到一条错误,该错误没有明确指出不允许使用点 (.) 或 @。当字段名称为 @odata.nextLink 时,构建 Java 原型(prototype)库时收到的错误消息为 Expected field name. 以及当字段名称为 odata 时.nextLink 是,缺少字段编号。

有办法解决吗? jackson 有一个 JsonProperty注释可以在 JSON 表示中指定实际的字段名称,而您可以在 Java 类中选取一个合理的字段名称。

如果您好奇,这与Open Data Protocol有关他们的命名约定是这样的。

最佳答案

总有办法解决这个问题:)但我不确定这是否值得付出努力。首先要说的是,PB字段有严格的命名约定,in proto files以及in Java generated code 。没有办法让你的特殊字符进入。注释也不是一个简单的出路。 Java 原型(prototype)代码已生成,因此您必须修改编译器才能添加注释。这是opensource所以技术上是可行的。实际上...这取决于你:)

正如您所说,您正在手动建模原始文件,我的建议是制定某种命名约定(例如,替换 . -> _@ -> _at_)。然后翻译 Odata 名称并通过 Java Reflection 调用 getter/setter。

关于java - protobuf - 带有特殊字符的字段名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41938112/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com