【发布时间】:2010-06-16 22:54:38
【问题描述】:
当我序列化一个对象时,我可以在类级别使用serialVersionUID机制来保证两种类型的兼容性。
但是,当我序列化枚举值的字段时会发生什么?有没有办法确保枚举类型在序列化和反序列化之间没有被操纵?
假设我有一个像 OperationResult {SUCCESS, FAIL} 这样的枚举,并且在一个正在序列化的对象中有一个名为“result”的字段。我如何确保在反序列化对象时,即使有人恶意颠倒了两者,结果仍然正确? (假设枚举在别处声明为静态枚举)
出于好奇,我想知道 - 我使用 jar 级身份验证来防止操纵。
【问题讨论】:
标签: java serialization enums