在使用memcache保存Javabean时郁闷的杯具

以前打算写一个memcache客户端图形化的管理工具,由于时间太忙和其他,后来不了了之。当然至于项目中,确实也从没有用过它。
  目前做的项目关于游戏,进行游戏接入时需要些必要的验证。打算把某些东西放入到memcache缓存中。多台服务器共享数据。杯具的事发生了:
   今天打算把一个自己封装好的JavaBean,先序列化,然后set到memcache。自己本系统可以放可以取到JavaBean。但是自己随后建立了另外一个Java项目再测试,取此JavaBean时,竟然什么都没有。
    服务器上查看,确实又存在。我随后在原来项目中再设置了一个普通的数值,在新Java工程中却又可以取到。
    随后我又在别人机器上测试。那个bean还是取不到。我叫别人设置一个JavaBean,看看我这能取到没?结果我也取不到别人的,然后叫别人设置一个普通的数据,却又可以取到。
能够找的错误都找遍了,什么客户端jar问题,过期时间问题,序列化Id问题。。。。


    杯具一直萦绕在身上,最后忍不住真想大喊一声TMD,郁闷的要死,感觉很奇怪,心理一直念三字经,烦躁了很久
    本来早就打算以后不干程序,结不解决问题都无所谓,可以避开,但是,总不能现在就当回避问题,本着不到黄河不死心,不到长城非好汉的精神。我随后在其他机器建立,不同的项目.......省略N多过程
    总之最后是找到了根本原因,从memcache取此bean时,需保证此当前项目中的bean和源项目中的bean什么都一样。连包名都不能改。但是原来好像记得序列化都可以保存到文件中,所以才认为对包没有那么限制。我就是因为包名不同,才导致N多的杯具发生(当然这个杯具完全可以不碰的,因为不论set和get都是一个系统中,也不存在什么一个JavaBean放两个位置。但是为了学习,别人弄出来了,就深究下去了)。一直想不到序列化要求的这么严格。我不是同一个项目bean换个位置都不行。还一直怀疑memcache应该不需要这么严。哎!!
  到最后花了我几个小时,不过,总算是找到原因了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值