Жизненный цикл и сериализация HttpServlet - PullRequest
6 голосов
/ 12 января 2012

Интересно, вызывается ли метод init HttpServlet после десериализации.

Я не знаю, сериализует ли когда-либо контейнер сервлет, но он реализует интерфейс Serializable, так что есть возможность сделать это.

JavaDoc для метода init указывает: «Вызывается контейнером сервлета, чтобы указать сервлету, что сервлет вводится в эксплуатацию.»

Является ли десериализация равной «помещена в службу"?

1 Ответ

5 голосов
/ 12 января 2012

Хотя я никогда не имел дело с контейнером, который бы заменял сервлет путем его сериализации, и я, честно говоря, не могу себе представить, когда это сделает современный контейнер, но я всегда понимал, что init() называется точноодин раз для сервлета в его жизненном цикле, поэтому он будет не снова вызываться при десериализации.Как и в случае с Serializable, вам нужно написать специальную обработку, реализовав readFields().

...