We stepped into the middle of the servlet’s life, but that still leaves questions: when was the servlet class loaded? When did the servlet’s constructor run? How long does the servlet object live? When should your servlet initialize resources? When should it clean up its resources?
The servlet lifecycle is simple; there’s only one main state—initialized. If the servlet isn’t initialized, then it’s either being initialized (running its constructor or init()method), being destroyed (running its destroy() method), or it simply does not exist.