serialVersionUID是做什么用的

wins22237 2011-03-25 04:14:50
网上搜索说:
序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性。


但是不理解。这个具体是怎么做了什么,怎么实现的
...全文
133 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yingzhuo2011 2011-03-28
  • 打赏
  • 举报
回复
[Quote=引用楼主 wins22237 的回复:]
但是不理解。这个具体是怎么做了什么,怎么实现的
[/Quote]

一般不需要你实现的,这些事情应用服务器都弄得妥妥儿的。
XiangZhiLiu 2011-03-25
  • 打赏
  • 举报
回复
如果没有显示的声明serialVersionUID,java系列化机制会根据编译后的classes自动生成一个serialVersionUID,
与本地相应的的实体类的serialVersionUID比较,如果相同就认为是一致的,可以进行反系列化,否则就会出现系列化版本不一致的异常~~~
在很多情况~~比如常见的就是二次开发。如果我们不希望通过编译来强制的划分软件的版本,即实现系列化接口的实体能够兼容前版本,没有做任何更改的类,就要显示的定义一个serialVersionUID。

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧