JAVA序列化的作用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA序列化的作用相关的知识,希望对你有一定的参考价值。
今天看了一下项目中的action大多数都没有进行序列化。所以项目上都是一大堆警告。
序列化究竟有什么作用呢?
简单来说。Java的序列化机制是通过在执行时推断类的serialVersionUID来验证版本号一致性的。
在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地对应实体(类)的serialVersionUID进行比較。假设同样就觉得是一致的。能够进行反序列化,否则就会出现序列化版本号不一致的异常。
当实现java.io.Serializable接口的实体(类)没有显式地定义一个名为serialVersionUID。类型为long的变量时。Java序列化机制会依据编译的class自己主动生成一个serialVersionUID作序列化版本号比較用。这样的情况下,仅仅有同一次编译生成的class才会生成同样的serialVersionUID。
假设我们不希望通过编译来强制划分软件版本号。即实现序列化接口的实体可以兼容先前版本号。未作更改的类。就须要显式地定义一个名为serialVersionUID。类型为long的变量,不改动这个变量值的序列化实体都可以相互进行串行化和反串行化。
转自:http://blog.sina.com.cn/s/blog_3e9d2b3501011uy8.html
====================================
看了非常多关于序列化的文章,其他都说的太官方或者邪乎。就这篇文章让我突然明确了序列化的意思。
以上是关于JAVA序列化的作用的主要内容,如果未能解决你的问题,请参考以下文章