The HttpServlet class extends the GenericServlet class and implements Serializable interface. It provides all the Http protocol supported methods such as doGet(), doPost(), doHead(), doPut(), doDelete(), doOptions(), doTrace().
Methods of HttpServlet Class
- public void service(ServletRequest req,ServletResponse res): This method send the request to the protected service method by converting both the req and res to http type.
- protected void service(HttpServletRequest req, HttpServletResponse res): This method receives the request from the aboveservice method, and dispatches the request to the doXXX() method depending on the incoming http request type.
- protected void doGet(HttpServletRequest req, HttpServletResponse res): This method handles GET request, doGet() method we can send specific amount of data. If we use doGet () method data is shown in address bar. We must override doGet () method depending on type of request.
- protected void doPost(HttpServletRequest req, HttpServletResponse res): This method handles the POST request. Large amount of data can be sent using doPost() method. The data will not be visible in the address bar.
- protected void doHead(HttpServletRequest req, HttpServletResponse res): This method request header part of the GET request without the GET response body.
- protected void doOptions(HttpServletRequest req, HttpServletResponse res): This method handles the OPTIONS request.
- protected void doPut(HttpServletRequest req, HttpServletResponse res): This method is used to put files (i.e) uploading files on the server. If requests is incorrectly formated then it will return HTTP BAD_REQUEST error.
- protected void doTrace(HttpServletRequest req, HttpServletResponse res): This method is used for logging and debugging purpose. It can be used for testing the requested message.
- protected void doDelete(HttpServletRequest req, HttpServletResponse res): This method handles the DELETE request. It deletes the files from the server.
- protected long getLastModified(HttpServletRequest req): This method returns the time when HttpServletRequest was last modified.
HttpServletExample.java
In this example we are creating a simple servlet class which extends the HttpServlet class. We will be providing the implementation of the doGet() method.
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class HttpServletExample extends HttpServlet{ public void doGet(HttpServletRequest request, HttpServletResponse respon se) throws IOException { PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<body>"); out.println("<h2>Http Servlet Example!!!</h2>"); out.println("</body>"); out.println("</html>"); } }
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>HttpServletExample</display-name> <servlet> <servlet-name>HttpServletExample</servlet-name> <servlet-class>com.javainterviewpoint.HttpServletExample</servlet-class> </servlet> <servlet-mapping> <servlet-name>HttpServletExample</servlet-name> <url-pattern>/HttpServlet</url-pattern> </servlet-mapping> </web-app>
Output
To run our HttpServletExample application hit on the below url
http://localhost:8080/ServletTutorial/HttpServlet
We will get the below output displayed in the browser
Http Servlet Example!!!
Leave a Reply