The JSP/Servlet container is responsible for managing the life cycle of a JSP file. In general there are three important stages in JSP life cycle.
- Instantiation
- Request Processing
- Destruction
JSP Life Cycle – Initialization Stage
When a JSP/Servlet container receives request for a JSP it checks if the JSP is initialized. If the JSP is not initialized already then the container would take the JSP file through the following stages.
# | Stage | Description |
---|---|---|
1 | Translation | Container translate the JSP file into a Servlet file |
2 | Compilation | The generated java Servlet file is compiled into a java Servlet class |
3 | Class Loading | The java Servlet class is loaded into JVM |
4 | Servlet Instantiation | An instance of the Servlet class is created |
5 | Initialization | jspInit() method is called right after instance was created. |
jspInit() method is called only once during JSP life cycle. Initialization will make ServletContext and ServletConfig objects available for the Servlet.
JSP Life Cycle – Request Processing Stage
Every request from client is served by _jspService() method. The whole initialization stage is done to make the JSP ready to serve the client request.
JSP Life Cycle – Destruction Stage
A Servlet/JSP container may call the _jspDestroy() method any time after the initialization. Once the _jspDestroy() method is called JSP file has go through to initialization process to be consumed by the client. Container may call the _jspDestroy() method as and when the container is gracefully shutdown or the container need to free up some memory to load other resources. Once the _jspDestroy() method is called the Servlet is no longer referred by a reference and the garbage collector can pick it up.
JSP Life Cycle Methods
- _jspInit()
- _jspService()
- _jspDestroy()
JSP Life Cycle
Все подробности marble fabricators тут.