文件名称:
Java序列化类库protostuff.zip
开发工具:
文件大小: 884kb
下载次数: 0
上传时间: 2019-07-17
详细说明: protostuff 是一个支持各种格式的一个序列化Java类库,包括 JSON、XML、YAML等格式。示例代码:public class UserSchema implements Schema { public boolean isInitialized(User user) { return user.getEmail() != null; } public void mergeFrom(Input input, User user) throws IOException { while(true) { int number = input.readFieldNumber(this); switch(number) { case 0: return; case 1: user.setEmail(input.readString()); break; case 2: user.setFirstName(input.readString()); break; case 3: user.setLastName(input.readString()); break; case 4: if(message.friends == null) message.friends = new ArrayList(); message.friends.add(input.mergeObject(null, this)); break; default: input.handleUnknownField(number, this); } } } public void writeTo(Output output, User user) throws IOException { if(user.getEmail() == null) throw new UninitializedMessageException(user, this); output.writeString(1, user.getEmail(), false); if(user.getFirstName() != null) output.writeString(2, user.getFirstName(), false); if(user.getLastName() != null) output.writeString(3, user.getLastName(), false); if(message.friends != null) { for(User friend : message.friends) { if(friend != null) output.writeObject(4, friend, this, true); } } } public User newMessage() { return new User(); } public Class typeClass() { return User.class; } public String messageName() { return User.class.getSimpleName(); } public String messageFullName() { return User.class.getName(); } // the mapping between the field names to the field numbers. public String getFieldName(int number) { switch(number) { case 1: return "email"; case 2: return "firstName"; case 3: return "lastName"; case 4: return "friends"; default: return null; } } public int getFieldNumber(String name) { Integer number = fieldMap.get(name); return number == null ? 0 : number.intValue(); } private static final HashMap fieldMap = new HashMap(); static { fieldMap.put("email", 1); fieldMap.put("firstName", 2); fieldMap.put("lastName", 3); fieldMap.put("friends", 4); } } 标签:protostuff
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
相关搜索: