什么是Servlet、编写Servlet小demo(使用配置文件,淘汰了)、servlet执行原理、编写Servlet小demo(使用注解)、Tomcat调试

本文详细介绍Servlet的基本概念及其实现方式,包括传统配置文件方法与现代注解配置方式,并演示如何通过Tomcat部署和调试Servlet。

一、什么是Servlet

在这里插入图片描述

二、编写Servlet小demo(使用配置文件,淘汰了)

  1. 创建JavaEE项目
    这里我直接使用上一篇博客的项目,虚拟路径还是bbb,在src下新建一个cn.itcast.web.servlet包,包下建ServletDemo1类如下:在这里插入图片描述

  2. 定义一个类,实现Servlet接口 * public class ServletDemo1 implements Servlet
    类写(这里我只写service而已):

package cn.itcast.web.servlet;

import javax.servlet.*;
import java.io.IOException;

/**
 * @author QLBF
 * @version 1.0
 * @date 2020/11/21 16:47
 */
public class ServletDemo1 implements Servlet {
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {
        
    }

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("第一个servlet");
    }

    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {

    }
}

  1. 实现接口中的抽象方法 ,见上
  2. 配置Servlet (不然无法通过url访问到你的类
    在web.xml中配置:
    在这里插入图片描述

我们需要这样配:

	<servlet>
        <servlet-name>demo1</servlet-name>
        <servlet-class>cn.itcast.web.servlet.ServletDemo1</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>demo1</servlet-name>
        <url-pattern>/demo1</url-pattern>
    </servlet-mapping>

在这里插入图片描述
这样我们在ServletDemo1点右上的绿色小按钮启动Tomcat,就会跳到浏览器,在浏览器中输入:
http://localhost:8080/bbb/demo1就会访问你的类了(注意这里bbb是我定义的虚拟目录,你可以改的),然后IDEA就会输出:“第一个servlet” 在IDEA控制台上的
如果你用浏览器访问的是html那么页面会显示在浏览器中,这里我们访问的资源是类,所以会在idea输出在这里插入图片描述

下面我把箭头的两个demo1改为demo2,在这里插入图片描述
在浏览器还是输入http://localhost:8080/bbb/demo1 (只要输入的是什么/的那个名就行) 还是可以访问到的

上面代码servlet执行原理

  1. 当服务器接受到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径
  2. 查找web.xml文件,是否有对应的标签体内容。
  3. 如果有,则在找到对应的全类名
  4. tomcat会将字节码文件加载进内存,并且创建其对象
  5. 调用其方法

可看图片:在这里插入图片描述

三、编写Servlet小demo(使用注解)

不使用web.xml配置文件了,而是使用注解了

步骤:

  1. 创建JavaEE项目,选择Servlet的版本3.0以上,可以不创建web.xml
    首先我们还是新建一个模块:在这里插入图片描述
    命名为day_25
    在这里插入图片描述
    tomcat的配置同上,虚拟目录还是定义为bbb

  2. 定义一个类,实现Servlet接口
    在src下建cn.it.web.servlet包再建个servler_test2类:
    在这里插入图片描述

这里你写@WebServlet("/demo3"),其实你加前面几个user/目录也没事的就是@WebServlet("/user/demo3")也是可以,user是不存在真正的物理目录,只不过是你想加的,只不过在浏览器除了输入虚拟目录还要把你这个想的user加上,过滤器filter用的比较多。

package cn.it.web.servlet;

import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import java.io.IOException;

/**
 * @author QLBF
 * @version 1.0
 * @date 2020/11/21 19:47
 */

@WebServlet("/demo3")
public class servler_test2 implements Servlet{
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {

    }

    @Override
    public ServletConfig getServletConfig() {
        return null;
    }

    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        System.out.println("使用注解的servlet");
    }

    @Override
    public String getServletInfo() {
        return null;
    }

    @Override
    public void destroy() {

    }
}

  1. 复写方法
  2. 在类上使用@WebServlet注解,进行配置 * @WebServlet(“资源路径”),eg:@WebServlet("/demo3")

在这里插入图片描述
就是在这个类的上一行写这行注释,然后打开浏览器输入:http://localhost:8080/bbb/demo3就可以访问到这个类输出到控制台上了。

四、Tomcat调试

调试过程类似https://blog.youkuaiyun.com/QLBFA/article/details/109518351

启动的时候按这个而已在这里插入图片描述

servlet的dopost和doget方法都是要通过浏览器访问你这个servlet类才会执行里面的代码的,而doget记得要this.dopost(request,response);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值