您的位置:首页 > 理论基础 > 计算机网络

Servlet学习总结(4)----HttpServlet学习笔记

2017-12-29 21:46 239 查看

1、GenericServlet

全名是javax.servlet.GenericServlet,是javax.servlet.http.HttpServlet的直接父类,一种与协议无关的servlet。

通用Servlet。

2、HttpServlet

javax.servlet.http.HttpServlet

<1>抽象类

<2>继承于GenericServlet

<3>实现了java.io.Serializable接口

<4>HttpServlet的子类必须重写我们常用的doPost或doGet方法中的一种,这里需要说明一下,因为我们之前了解到的是当访问Servlet时,会去调用Servlet的service方法,那这里我们为什么会去重写doPost或者doGet方法呢?原因就是HttpServlet的源码中,service方法中根据市GET请求还是POST请求,跳转到对应的doPost或者doGet方法,具体请见:http://blog.csdn.net/jin970505/article/details/78935152

<5>doGet是给GET方式的HTTP请求做响应的doPost是给POST方式的HTTP请求做响应的

<6>看一个httpservlet的代码:重写了doGet方法,并且在doPost方法中调用了doGet方法,于是无论调用哪个那个方法都会去使用doGet的业务逻辑。

package one;

import java.io.IOException;

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 HttpServletDemo extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("doGet方法被调用");
resp.getOutputStream().write("doGet方法被调用".getBytes());
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req,resp);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  servlet