协议缓冲区中的Java HashMap

问题描述 投票:0回答:2

我是 Google 协议缓冲区的新手。目的是使用 proto 文件生成可以通过网络发送的 java 类。有没有办法在生成的类中包含 java 地图?它的任何示例代码都将非常有用。生成的java类应该包含一个键值类型为

Map
的成员变量。

java protobuf-net
2个回答
2
投票

谷歌中有一个关于此的问题https://code.google.com/p/protobuf/issues/detail?id=299

最后一条消息来自 2014 年 10 月 9 日

项目成员 #4 [email protected] 地图字段的新语法将 引入protobuf:message TestMessage { map a_map_field = 1; }

我们目前正在努力实施它,应该是 包含在下一个主要版本中。

因此,要么等待新版本,要么使用适当的键和值结构实现您自己的元组。

看看类似的问题 如何使用 Protocol Buffers 对 Map 进行编码?


0
投票
致访问此页面并了解如何将

Map

 添加到协议缓冲区中的人们。在原型版本 3 中,添加了 
map
,您可以按如下所示使用它:

Koltin

班:

data class Person( val name : String, val badges : Map<String, String> )

.proto

文件:

syntax = "proto3"; message Person { string name = 1; map<string, string> badges = 2; }
    
© www.soinside.com 2019 - 2024. All rights reserved.