HttpServlet生命周期和序列化

cpa*_*ter 6 lifecycle serialization servlets init

我想知道在反序列化之后是否调用了HttpServlet的init方法.

我不知道是否有任何容器序列化servlet但它实现了Serializable接口,因此有可能这样做.

init方法的JavaDoc指出:"由servlet容器调用,以向servlet指示servlet正在投入服务."

反序列化是否等于"投入使用"?

Sea*_*wen 5

虽然我从来没有真正处理过通过序列化交换servlet的容器​​,但我真的无法想象现代容器何时会这样做,但我一直都知道它init()的servlet只调用一次生命周期,因此,在反序列化时不会再次调用它.与任何Serializable你需要通过实现编写特殊处理的东西一样readFields().

  • 好的,它开始变得复杂.GenericServlet(介绍层次结构中的Serializable接口)只说:"由servlet容器调用,以向servlet指示servlet正在投入服务." 另一点:"在实例化servlet之后,servlet容器只调用<code> init </ code>方法一次." 在Servlet接口的JavaDoc中说是不可序列化的. (3认同)
  • 另一点是,传递给init方法的ServletConfig存储在瞬态字段中...... (2认同)