004、Servlet的体系结构

Servlet的体系结构    
        Servlet -- 接口
            |
        GenericServlet -- 抽象类,继承自Servlet
            |
        HttpServlet  -- 抽象类,继承自GenericServlet

        * GenericServlet:将Servlet接口中其他的方法做了默认空实现,只将service()方法作为抽象,因此如果我们将来定义Servlet类时,可以继承GenericServlet,只要实现service()方法即可

        * HttpServlet:对http协议的一种封装,简化操作,比如我们实际在实现servlet都要去判断请求方式是get还是post(实际http请求有其中方式,get、post比较普遍),这些写的很麻烦。
            使用步骤:
                1. 定义类继承HttpServlet
                2. 对doGet和doPost方法进行复写,通过浏览器访问时使用的doGet方法,测试doPost我们可以通过使用表单来设置。
        注意:
            1、推荐在实现servlet类时,使用HttpServlet方式。
演示一、

ServletDemo02.java

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/demo2")

public class ServletDemo02 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("doget...");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("dopost...");
    }
}


在浏览器中输入:http://localhost/servlet/demo2
输出如下:

演示二、在web目录下建立一个html,然后制作一个表格

注意:form里面action="资源路径名" 的资源路径名(举例:action="demo2")和 servlet3.0的注解   @WebServlet("/资源路径名") 名字要一致,但是不能有 “/”

login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>title</title>
</head>
<body>
    <!--<form action="demo2" method="get">-->
    <form action="demo2" method="post">
        <input name="username">
        <input type="submit" value="提交">
    </form>
</body>
</html>

在浏览器中输入如下,并输入内容后点击提交

会输出如下:

发布了290 篇原创文章 · 获赞 5 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/l0510402015/article/details/104691560
今日推荐