Servlet Hierarchy
Core Interfaces and Classes
- javax.servlet.Servlet interface (Root interface)
void init(ServletConfig config) throws ServletException
void service(ServletRequest req, ServletResponse resp) throws IOException, ServletException
void destroy()
- GenericServlet (Abstract class)
- Protocol-independent servlet
- Base class for all servlets
- HttpServlet (Abstract class)
- HTTP-based servlet class
- User-defined servlets inherit from this
- Overrides
service()
method
- Provides HTTP method handlers:
doGet()
, doPost()
, doPut()
, doDelete()
, doHead()
, doTrace()
, doOptions()
HttpServletRequest Interface
Key Features
- Inherits from ServletRequest interface
- Created by web server for each request
- Represents HTTP request body and headers
Request Parameters
// Single value (textbox, radiobutton, dropdown)
String paramValue = req.getParameter("param-name");
// Multiple values (checkboxes, listbox)
String[] paramValues = req.getParameterValues("param-name");
Request Headers
// Single header value
String headerValue = req.getHeader("header-name");
String contentType = req.getHeader("Content-Type");
// Multiple header values
String[] headerValues = req.getHeaderValues("header-name");
File Upload
InputStream in = req.getInputStream();
HttpServletResponse Interface
Key Features
- Inherits from ServletResponse interface
- Created by web server for each request