当前位置: 首页 > 知识库问答 >
问题:

必须为现有proto includes映射创建java pojo

苏建安
2023-03-14

我尝试过将proto转换为java pojo。但得到了错误

[Stderr]命令。原型:12:18:预期为“必需”、“可选”或“重复”。[Stderr]命令。proto:12:21:应为字段名。

optional int32 orderID = 1; 
optional int32 quantity = 2;    
map<string,string> map_field = 4;
repeated string product = 3;

请帮我做些需要改变的事情。我在谷歌protobuf开发者网站上搜索https://developers.google.com/protocol-buffers/docs/proto#maps它表示映射字段不能重复、可选或必需

请帮我解决这个问题。

共有1个答案

彭建业
2023-03-14

地图是protobuf 3.0(又名“proto3”)中的一项新功能,目前仍在alpha中。您可能正在使用2。x、 在这种情况下,没有地图。最好使用重复字段:

repeated MyMap map_field = 4;
message MyMap {
  optional string key = 1;
  optional string value = 2;
}
 类似资料:
  • 假设我有一组字符串和一个散列函数(或任何单边函数)和一个测试函数。我想用Java8流创建一个从输入字符串到通过测试函数的哈希值的映射。我的问题是如何在中编写? 看来老的for循环是最简洁的解决方案。

  • 本文向大家介绍JavaScript创建映射,包括了JavaScript创建映射的使用技巧和注意事项,需要的朋友参考一下 示例 映射是键到值的基本映射。映射与对象的不同之处在于,它们的键可以是任何东西(原始值和对象),而不仅仅是字符串和符号。Map上的迭代也总是按照将项目插入Map中的顺序进行,而在对象中的键上进行迭代时,顺序是不确定的。 要创建映射,请使用Map构造函数: 它具有一个可选参数,该参

  • 我有两个表模式 员工 地址

  • 我想知道如果我在现有的hbase表上创建phoenix表,它是复制(或复制)hbase表中存在的数据,还是phoenix表只是链接到hbase中存在的现有数据? 我的phoenix版本是<4.12.0,所以这个错误仍然适用于我的版本&因此不能在现有的hbase表上创建视图。

  • 问题内容: 我在elasticsearch网站上找到了一篇文章,描述了如何“在不停机的情况下重新编制索引”,但是每次引入需要自定义映射的新元素时,这实际上是不可接受的(http://www.elasticsearch.org/blog/changing- 零停机时间映射/ ) 有谁知道为什么我不能为Elasticsearch中的现有索引创建映射,而是为新类型创建映射?该类型尚不存在,为什么不呢?也

  • -----编辑----- 这个问题Docker映像和容器之间有什么区别?没有回答我的问题。 我的问题是:为什么我们需要从图像而不是从DockerFile创建容器?首先从Dockerfile创建映像,然后再创建容器的目的/好处是什么?