Writing your first servlet by hand

one step
1. Inherit HttpServlet
2. Rewrite the doGet() or doPost() method
3. Register Servlet in web.xml
 
Two HttpServlet class inheritance diagram


 
 
Three examples
1. Create MyFirstServletDemo web project.


 
2. Edit index.jsp
<%@ page language = "java" import = "java.util.*" contentType="text/html; charset=utf-8"%>  
<%
String path = request.getContextPath();
String basePath = request.getScheme()+ "://" +request.getServerName()+ ":" +request.getServerPort()+path+ "/" ;
%>
 
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
< html >
  < head >
    < base href = " <%= basePath %> " >
   
    < title > My JSP 'index.jsp' starting page </ title >
         < meta http-equiv = "pragma" content = "no-cache" >
         < meta http-equiv = "cache-control" content = "no-cache" >
         < meta http-equiv = "expires" content = "0" >    
         < meta http-equiv = "keywords" content = "keyword1,keyword2,keyword3" >
         < meta http-equiv = "description" content = "This is my page" >
         <!--
        <link rel =" stylesheet " type="text/ css " href ="styles.css">
        -->
  </ head >
 
  < body >
    < h1 > The first Servlet small example </ h1 >
    < a href = "servlet/HelloServlet" > Get方式请求HelloServlet </ a >
     < form action = "servlet/HelloServlet" method = "post" >
                 < input type = "submit" value = "Post方式请求HelloServlet" >
     </ form >
  </ body >
</ html >
3. Write HelloServlet
package servlet;
 
import java.io.IOException;
import java.io.PrintWriter;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
//Inherited from HttpServlet
public class HelloServlet extends HttpServlet {
 
         @Override
         protected void doGet(HttpServletRequest request, HttpServletResponse response)
                         throws ServletException, IOException {
                 // TODO Auto-generated method stub
                System.out.println ( " Processing get() request..." );
                PrintWriter out = response.getWriter();
                response.setContentType( "text/html; charset=utf-8" );
                out.println( "<strong>Hello Servlet!</strong><br>" );
        }
 
         @Override
         protected void doPost(HttpServletRequest request, HttpServletResponse response)
                         throws ServletException, IOException {
                System.out.println ( " Processing post() request..." );
                PrintWriter out = response.getWriter();
                response.setContentType( "text/html; charset=utf-8" );
                out.println( "<strong>Hello Servlet!</strong><br>" );
        }
 
}
4. Write web.xml
<? xml version = "1.0" encoding = "UTF-8" ?>
< web-app version = "2.5"
         xmlns = " http://java.sun.com/xml/ns/javaee" ;
         xmlns:xsi = " http://www.w3.org/2001/XMLSchema-instance" ;
         xsi:schemaLocation = " http://java.sun.com/xml/ns/javaee
  < display-name ></ display-name >   
  < welcome-file-list >
    < welcome-file > index.jsp </ welcome-file >
  </ welcome-file-list >
  < servlet >
         < servlet-name > HelloServlet </ servlet-name >
         < servlet-class > servlet.HelloServlet </ servlet-class >
  </ servlet >
  < servlet-mapping >
         < servlet-name > HelloServlet </ servlet-name >
         < url-pattern > / servlet /HelloServlet </ url-pattern >
  </ servlet-mapping >
</ web-app >
 
Four running results

 



 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326727476&siteId=291194637