走进Servlet-JSP(九)

112 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第二十四天,点击查看活动详情

前言:今天继续开发一个带有Servlet(Java小程序)的webapp的学习~

  • 第五步:在WEB-INF目录下新建一个文件:web.xml
-   注意:这个文件是必须的,这个文件名必须叫做web.xml。这个文件必须放在这里。一个合法的webapp,web.xml文件是必须的,这个web.xml文件就是一个配置文件,在这个配置文件中描述了请求路径和Servlet类之间的对照关系。
-   这个文件最好从其他的webapp中拷贝,最好别手写。没必要。复制粘贴
-   ```
    <?xml version="1.0" encoding="UTF-8"?>
    ​
    <web-app xmlns="https://jakarta.ee/xml/ns/jakartaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee
                          https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd"
      version="5.0"
      metadata-complete="true">
    ​
    ​
    </web-app>
    ​
    ```
  • 第六步:编写一个Java程序,这个小Java程序也不能随意开发,这个小java程序必须实现Servlet接口。

    • 这个Servlet接口不在JDK当中。(因为Servlet不是JavaSE了。Servlet属于JavaEE,是另外的一套类库。)
    • Servlet接口(Servlet.class文件)是Oracle提供的。(最原始的是sun公司提供的。)
    • Servlet接口是JavaEE的规范中的一员。
    • Tomcat服务器实现了Servlet规范,所以Tomcat服务器也需要使用Servlet接口。Tomcat服务器中应该有这个接口,Tomcat服务器的CATALINA_HOME\lib目录下有一个servlet-api.jar,解压这个servlet-api.jar之后,你会看到里面有一个Servlet.class文件。
    • 重点:从JakartaEE9开始,Servlet接口的全名变了:jakarta.servlet.Servlet
    • 注意:编写这个Java小程序的时候,java源代码你愿意在哪里就在哪里,位置无所谓,你只需要将java源代码编译之后的class文件放到classes目录下即可。
  • 第七步:编译我们编写的HelloServlet

    • 重点:你怎么能让你的HelloServlet编译通过呢?配置环境变量CLASSPATH

      CLASSPATH=.;C:\dev\apache-tomcat-10.0.12\lib\servlet-api.jar

    • 思考问题:以上配置的CLASSPATH和Tomcat服务器运行有没有关系?

      • 没有任何关系,以上配置这个环境变量只是为了让你的HelloServlet能够正常编译生成class文件。