HttpServlet
1) 是一个Servlet,继承自GenericServlet,针对于HTTP协议所定制。
2)在service()方法中直接把ServletRequest和ServletReponse,转为HttpServletRequest和HttpServletReponse.
并调用了重载的service(HttpServletRequest,HttpServletReponse)。在service(HttpServletRequest,HttpServletReponse)
中获取了请求方式:request.getMethod(),根据请求方式又创建了doXXX()方法。
3)实际开发中,直接继承HttpServlet,并根据请求方式复写doXXX()方法接口。
4)优势: 直接由针对性的覆盖doxxx()方法
直接使用HttpServletRequest,HttpServletReponse,不再需要进行强转。
package com.sa.servlet;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.Enumeration;
import java.util.Map;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginServlet2 extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException {
// TODO Auto-generated method stub
String user=request.getParameter("login");
String password=request.getParameter("password");
ServletContext servletContext=request.getServletContext();
String user2=servletContext.getInitParameter("user");
String password2=servletContext.getInitParameter("password");
PrintWriter writer=response.getWriter();
if(user.equals(user2)&&password.equals(password2)){
writer.println("hello,"+user);
}else{
writer.println("sorry,"+user);
}
}
}