开始学习pb了,来些总结吧!
本人github上本内容相关的项目:
springboot+protobuf
springboot+protobuf+websocket
接口设计:
我的Protobuf消息设计原则 https://my.oschina.net/cxh3905/blog/159122
我的Protobuf消息设计原则(续)–实践 https://my.oschina.net/cxh3905/blog/293000
Json转换
protobuf转json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| import com.google.protobuf.Descriptors; import com.googlecode.protobuf.format.JsonFormat; import java.io.IOException; /** * JsonFormat的子类,不打印图片数据 * * 直接使用com.googlecode.protobuf.format.JsonFormat的方法: * new JsonFormat().printToString(message); * 来打印,会将图片也打印出来,下面方法过滤了图片数据。 * new MyJsonFormat().printToString(message); * * Created by hfy on 2018/1/5. */ public class MyJsonFormat extends JsonFormat { @Override public void printField(Descriptors.FieldDescriptor field, Object value, JsonGenerator generator) throws IOException { if (field.getType() == Descriptors.FieldDescriptor.Type.BYTES) { generator.print("\""); generator.print("image data..."); generator.print("\""); } else { super.printField(field, value, generator); } } }
|
参考
protobuf 和 intellij 配置使用
Protobuf 语法指南
httpclient +protobuf 实现数据传输