在servlet会话和java.io.NotSerializableException中保存对象

Eug*_*neP 2 java session servlets

 SEVERE: IOException while loading persisted sessions:
         java.io.WriteAbortedException:
         writing aborted; java.io.NotSerializableException:
Run Code Online (Sandbox Code Playgroud)

这意味着此对象不能保留在硬盘上.

这是否意味着保留不实现"Serializable"的Session对象是不安全的?

我没有听说在Session对象中保存不可序列化的对象存在限制.

它只是意味着Tomcat将始终将它们保存在内存中,对吗?

ska*_*man 8

这是否意味着保留不实现"Serializable"的Session对象是不安全的?

这是完全正确的,是的.

但是,如果他们实际上不需要进行任何序列化,许多servlet容器将让你逃脱它.

例如,除非启用会话复制,否则 Tomcat不关心会话属性是否可序列化.它需要能够序列化属性以将它们复制到群集中的其他服务器.

在您的情况下,似乎容器正在尝试将会话数据持久保存到磁盘,这又需要序列化.