java Enum序列化问题

精贴 置顶
2113 0

  背景:项目中,服务器端使用JAVA开发,客户端用C#开发,客户端和服务器端通过WEBSERVICE连接,但在使用Enum(枚举)时,服务器端正确接收到信息,在信息序列化到文件时,Enum的值总是不能正确的序列化。后经多方参考,才知道要指定类型:

 


  XMLEncoder encoder;
  try {
  encoder = new XMLEncoder(
  new BufferedOutputStream(
  new FileOutputStream(Config.instance().getModuleFile(filename))));
  //此处代码可以让Enum顺利的序列化,反序列化的时候不存在这个问题
  encoder.setPersistenceDelegate( DBTYPE.class, new EnumPersistenceDelegate() );
  encoder.setPersistenceDelegate( WEBCTRL.class, new EnumPersistenceDelegate() );
  encoder.setPersistenceDelegate( METHOD.class, new EnumPersistenceDelegate() );
  encoder.writeObject(webnode);
  encoder.close();
  return true;
  } catch (Exception e) {
  e.printStackTrace();
  }
  //EnumPersistenceDelegate.java
  public class EnumPersistenceDelegate extends PersistenceDelegate {
  protected boolean mutatesTo(Object oldInstance, Object newInstance) {
  return oldInstance == newInstance;
  }
  protected Expression instantiate(Object oldInstance, Encoder out) {
  Enum e = (Enum) oldInstance;
  return new Expression(e, e.getClass(), "valueOf", new Object[] { e
  .name() });
  }
  }

  • 没有任何评论
今日天气 ···

···

···

···

热门排行
用ASP实现网页BBS 2010-11-01
CSS cursor鼠标样式一览表 2012-06-25
.NET后台写JS代码 2011-11-03
网站地址多出jdfwkey的问题解析及... 2010-08-25
数据库xxx的日志已满,请备份该数... 2013-07-19
百度、google、Yahoo网站地图制作... 2011-01-30
<a>标签的伪类书写顺序问题... 2010-09-04
什么是长尾关键词? 2010-09-24
CEO名言 2010-08-31
Mysql 主从数据库同步 2010-09-12
博主推荐
本个人博客微信公众平台上线啦~~... 2013-10-13
饼哥网络互联上线啦~~要买域名空... 2013-09-20
网站title标题如何正确修改不会被... 2013-08-26
饼哥通讯录系统上线啦,欢迎大家... 2013-08-24
ASP .NET MYSQL 的简单分页 并不... 2013-08-19
网站有弹窗广告这样的站点,百度... 2013-08-17
做淘宝SEO优化需要注意的8大问题 2013-08-17
淘宝网怎么做SEO优化 2013-08-17
站长们要学习的“苍井空精神” 2013-08-17
苹果公司今日发布了iOS 7第五个开... 2013-08-07
随便看看
web开发中如何在IE后退时设置网页... 2013-09-06
淘宝网怎么做SEO优化 2013-08-17
js怎么输出30-50之间的随机数 2010-09-12
正心、修身、齐家、兴业 2013-10-31
Android中判断手机是不是已经Roo... 2013-06-27
数据库查询语言(2) 2010-10-23
破解威盾监控最给力办法 2013-11-13
ASP如何获取客户端真实IP地址 2010-11-01
教你六个妙招提升Win XP速度 2010-09-07
Sql函数大全 2010-12-07
RSS新闻
传媒新闻
CSDN
八卦新闻
女性新闻
台湾新闻
互联网
军事-新浪博客
IT-新浪博客
汽车新闻
游戏新闻
国际新闻
国内新闻
体育新闻
我的微博
北京 上海 杭州 深圳 广州 成都