jprotobuf icon indicating copy to clipboard operation
jprotobuf copied to clipboard

请问有没有万能对象?

Open manyhelp opened this issue 7 years ago • 4 comments

比如 fastjson JSONObject jsonObj = JSON.parseObject(str); jsonObj.get("code")

jprotobuf有没有万能对象,通过数组下标的方式获取数据?

manyhelp avatar Jul 27 '17 13:07 manyhelp

有类似的。 增加由.proto 描述文件动态生成Protobuf操作对象的支持

String protoCotent = "package mypackage.test; " + "option java_package = "com.baidu.bjf.remoting.protobuf.simplestring";" + "option java_outer_classname = "StringTypeClass"; " + "message StringMessage { " + " required string message = 1; }" ;

IDLProxyObject object = ProtobufIDLProxy.createSingle(protoCotent);
//if .proto IDL defines multiple messages use as follow
//Map<String, IDLProxyObject> objects = ProtobufIDLProxy.create(protoCotent);
// 动态设置字段值
object.put("message", "hello你好");
//propogation object set

https://github.com/jhunters/jprotobuf

jhunters avatar Jul 27 '17 13:07 jhunters

比如我给一串16进制数据。能动态解析吗? 0801106D1A0A372E312E302E333137352205342E342E322AB0010A1B696E646976696475616C5F76325F666F6E745F6470635F6661696C12033130391205372E312E30120D666F6E745F6470635F6661696C120764656661756C74120012001D0000803F1D000000001D00000000209BA5EFC9052A547569703A3137322E31362E3135322E31352C204C656E6F766F2041383230743B20435055206E756D6265723A20313B20435055206672657175656E63793A20313935333B2052414D3A2031303535363533383838

manyhelp avatar Jul 27 '17 15:07 manyhelp

这样利于调试啊。不能来个数据就编辑下文件吧。

manyhelp avatar Jul 27 '17 15:07 manyhelp

fastjson,给一串json字符串,就有万能对象解析,然后通过get的方式获取数据。请问jprotobuf要怎么操作?不希望通过.proto 描述文件,生成类啊什么的来解析,很麻烦 pb十六进制数据如下: 0801106D1A0A372E312E302E333137352205342E342E322AB0010A1B696E646976696475616C5F76325F666F6E745F6470635F6661696C12033130391205372E312E30120D666F6E745F6470635F6661696C120764656661756C74120012001D0000803F1D000000001D00000000209BA5EFC9052A547569703A3137322E31362E3135322E31352C204C656E6F766F2041383230743B20435055206E756D6265723A20313B20435055206672657175656E63793A20313935333B2052414D3A2031303535363533383838

manyhelp avatar Jul 27 '17 15:07 manyhelp