关于serialVersionUID
在Loong(我们公司自己开发的基于OSGI的网络应用服务器平台)中集成Glassfish 的数据源时遇到了序列化的问题:在Glassfish中序列化的连接池对象,在Loong里面反序列化时总是不成功!后来查了相关资料,原来是连接池类出了问题:只实现了Serializable接口,没有指定具体的serialVersionUID。
凡是实现Serializable接口的类都应当有一个表示序列化版本标识符的静态变量:
private static final long serialVersionUID;
以上serialVersionUID的取值是Java运行时环境根据类的内部细节自动生成的。如果对类的源代码作了修改,再重新编译,新生成的类文件的serialVersionUID的取值有可能也会发生变化。
类的serialVersionUID的默认值完全依赖于Java编译器的实现,对于同一个类,用不同的Java编译器编译,有可能会导致不同的serialVersionUID,也有可能相同。为了提高哦啊serialVersionUID的独立性和确定性,强烈建议 在一个可序列化类中显示的定义serialVersionUID,为它赋予明确的值。
显式地定义serialVersionUID有两种用途:
1) 在某些场合,希望类的不同版本对序列化兼容,因此需要确保类的不同版本具有相同的serialVersionUID;
2) 在某些场合,不希望类的不同版本对序列化兼容,因此需要确保类的不同版本具有不同的serialVersionUID。
相关推荐
java序列化和反序列化java序列化和反序列化java序列化和反序列化
Xson是一个Java对象序列化和反序列化程序。支持Java对象到字节数组的序列化,和从字节数组到Java对象的反序列化。 Maven: <groupId>com.github.xsonorg</groupId> <artifactId>xson-core <version>1.0.1 ...
java 对象的序列化与反序列化 java 对象的序列化与反序列化
在应用java进行c-s开发的时候,尤其涉及到图片和视频之间的传输时,需要用序列化和反序列化技术,希望对您有帮助
java反序列化工具,覆盖jboss、weblogic、websphere。
Java序列化与反序列化 Java序列化与反序列化 Java序列化与反序列化 Java序列化与反序列化 Java序列化与反序列化
java对象 java序列化 java反序列化
java 的序列化与反序列化举例测试
java序列化(Serializable)的作用和反序列化.doc 有详细的讲解哦。 在什么地方用的到都有说明的.
java 常用序列化和反序列化框架使用demo ,java 常用序列化和反序列化框架使用demo
Java Json序列化与反序列化
序列化是干什么的? 简单说就是为了保存在内存中的各种对象的状态(也就是实例...虽然你可以用你自己的各种各样的方法来保 存object states,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。
Java序列化和反序列化
java序列化和反序列化1
极好的序列化与发序列化代码。可以处理array集合,数组或者单个对象等的序列化与反序列化。
java序列化与反序列化
通过实现 Serializable 接口,Java对象可以被序列化和反序列化。序列化可以将对象转换为字节流,以便于存储或传输。反序列化则可以将字节流重新转换为原始对象。需要注意的是,序列化和反序列化的类必须具有相同的 ...
java反序列化工具;weblogic反序列化工具;jboss反序列化工具。