Servlet API
Two packages contain the classes and interfaces that are required to build servlets. These are javax.servlet and javax.servlet.http. These constitutes are called Servlet API.
javax.servlet Package:
javax.servlet package contains several interfaces and classes that establish the framework in which servlets operate. All servlets must implement this interface or extend a class that implements the interface. The ServletRequest and ServletResponse interfaces are also very important.
Interface | Description |
ServletConfig | It allows servlets to get initialization parameters. |
ServletContext | It enables servlets to log events and access information about their environment. |
ServletRequest | It used to read data from a client request. |
ServletResponse | It used to write data to client response. |
GenericServlet | It implements the Servlet and ServletConfig interfaces. |
ServletInputStream | It provides an input stream for reading requests from a client. |
ServletOutputStream | It provides an output stream for writing responses to a client. |
ServletException | It indicates a servlet error occurred. |
UnavailableException | It indicates a servlet is unavailable. |
ServletRequest Interface:
ServletRequest interface enables a servlet to obtain information about a client request.
Method | Description |
Object getAttribute(String attr) | It returns the value of the attribute named attr. |
String getCharacterEncoding( ) | It returns the character encoding of the request. |
int getContentLength( ) | It returns the size of the request. The value –1 is returned if the size is unavailable. |
String getContentType( ) | It returns the type of the request. A null value is returned if the type cannot be determined. |
ServletInputStream getInputStream( ) throws IOException | It returns a ServletInputStream that can be used to read binary data from the request. An IllegalStateException is thrown if getReader( ) has already been invoked for this request. |
String getParameter(String pname) | It returns the value of the parameter named pname. |
Enumeration getParameterNames( ) | It returns an enumeration of the parameter names for this request. |
String[ ] getParameterValues(String name) | It returns an array containing values associated with the parameter specified by name. |
String getProtocol( ) | It returns a description of the protocol. |
BufferedReader getReader( ) throws IOException | It returns a buffered reader that can be used to read text from the request. An IllegalStateException is thrown if getInputStream( ) has already been invoked for this request. |
String getRemoteAddr( ) | It returns the string equivalent of the client IP address. |
String getRemoteHost( ) | It returns the string equivalent of the client hostname. |
String getScheme( ) | It returns the transmission scheme of the URL used for the request (for example, “http”, “ftp”). |
String getServerName( ) | It returns the name of the server. |
int getServerPort( ) | It returns the port number. |
ServletResponse Interface:
ServletResponse interface enables a servlet to formulate a response for a client.
Method | Description |
String getCharacterEncoding( ) | It returns the character encoding for the response. |
ServletOutputStream getOutputStream( ) throws IOException | It returns a ServletOutputStream that can be used to write binary data to the response. An IllegalStateException is thrown if getWriter( ) has already been invoked for this request. |
PrintWriter getWriter( ) throws IOException | It returns a PrintWriter that can be used to write character data to the response. An IllegalStateException is thrown if getOutputStream( ) has already been invoked for this request. |
void setContentLength(int size) | It sets the content length for the response to size. |
void setContentType(String type) | It sets the content type for the response to type. |
ServletConfig Interface:
ServletConfig interface allows a servlet to obtain configuration data when it is loaded.
Method | Description |
ServletContext getServletContext( ) | It returns the context for this servlet. |
String getInitParameter(String param) | It returns the value of the initialization parameter named param. |
Enumeration getInitParameterNames( ) | It returns an enumeration of all initialization parameter names. |
String getServletName( ) | It returns the name of the invoking servlet. |
ServletContext Interface:
ServletContext interface enables servlets to obtain information about their environment.
Method | Description |
Object getAttribute(String attr) | It returns the value of the server attribute named attr. |
String getMimeType(String file) | It returns the MIME type of file. |
String getRealPath(String vpath) | It returns the real path that corresponds to the virtual path vpath. |
String getServerInfo( ) | It returns information about the server. |
void log(String s) | Writes s to the servlet log. |
void log(String s, Throwable e) | Writes s and the stack trace for e to the servlet log. |
void setAttribute(String attr, Object val) | It sets the attribute specified by attr to the value passed in val. |