为什么传输对象需要实现可序列化?
2022-09-03 06:28:02
我今天意识到,多年来,我一直盲目地遵循这一要求,而从未真正问过为什么。今天,我遇到了一个NotSerializableException,其中包含我从头开始创建的模型对象,我意识到足够了。
我被告知这是因为负载平衡服务器之间的会话复制,但我知道我在会话范围内看到其他对象未实现可序列化。这才是真正的原因吗?
我今天意识到,多年来,我一直盲目地遵循这一要求,而从未真正问过为什么。今天,我遇到了一个NotSerializableException,其中包含我从头开始创建的模型对象,我意识到足够了。
我被告知这是因为负载平衡服务器之间的会话复制,但我知道我在会话范围内看到其他对象未实现可序列化。这才是真正的原因吗?
这才是真正的原因。在实践中,它是否真的重要,完全取决于Web服务器或应用程序服务器是否确实会序列化对象(或验证它是否可序列化,但实际上,唯一的方法是实际序列化它)。
大多数应用程序服务器可以选择(至少)不严格要求它。如果您不使用实际共享状态的负载平衡服务器,那么您可能已经看到它没有问题。