【发布时间】:2010-09-30 00:09:27
【问题描述】:
在我看来,为新类显式指定 serialVersionUID 是不好的。考虑两种情况,当布局有它应该改变它时不改变它,当它不应该改变它时改变它。
当它应该改变时不改变几乎只在它是明确的时候发生。在这种情况下,它会导致一些非常微妙、难以发现的错误。特别是在开发过程中,当类布局经常变化时。但如果没有明确指定,它会发生变化,反序列化会严重中断,很可能通过清除存储库来解决。
几乎只有在它是隐式的时候才会在不应该的时候改变它。这是类布局已更改但我们仍希望从旧的序列化 blob 中反序列化的罕见情况。这可能会在 QA 期间被发现(从 5.2 升级到 5.2.1 后出现奇怪的错误,请参阅附加的堆栈跟踪),并且可以通过设置显式值来轻松修复。
评论?
【问题讨论】:
标签: java serialization serialversionuid