Servlet技术

发布时间 2023-03-22 21:13:18作者: 我就不告诉你我是谁

1. Servlet

    (1)Servlet 技术是对原生 Java API 进行了封装,形成了一套新的 API,称为 Servlet API。方便我们进行动态网页开发。

    (2)一个 Servlet 程序就是一个按照 Servlet 规范编写的 Java 类,程序员只需要编写代码去实现 Servlet 规范提到的各种功能,包括类、方法、属性等。

    (3)Servlet 容器用来管理程序员编写的 Servlet 类。

    (4)实际开发中一般都继承自 HttpServlet 类。

    (5)现代都是使用JSP来开发网页,没有直接使用 Servlet 的,但是JSP 只是在 Servlet 的基础上做了进一步封装。

2. Servlet容器

    (1)部署动态网站一般至少需要三个组件,分别是 Web 服务器、脚本语言运行环境和数据库。

              

    (2)Servlet 是基于 Java 语言的,运行时需要:

                1) JRE (Java 虚拟机(JVM)、Java 核心类库等)的支持

                2) Servlet 容器(支持Servlet规范,实现了Servlet接口和一些基础类,原因:JRE是不支持Servlet规范的,所以需要它)

    (3)自己编写的 Servlet 类为什么需要 Servlet 容器来管理呢?

             因为我们编写的 Servlet 类没有 main() 函数,不能独立运行,只能作为一个模块被载入到 Servlet 容器,然后由 Servlet 容器来实例化,并调用其中的方法。

             一个动态页面对应一个 Servlet 类,开发一个动态页面就是编写一个 Servlet 类,当用户请求到达时,Servlet 容器会根据配置文件(web.xml)来决定调用哪个类。

    (4)Servlet 容器在整个 HTTP 请求流程中的位置:

                

               用户的 HTTP 请求首先到达 Web 服务器,Web 服务器判断该请求是静态资源还是动态资源:如果是静态资源就直接返回,此时相当于用户下载了一个服务器上的文件;如果是动态资源将无法处理,必须将该请求转发给 Servlet 容器。

            Servlet 容器接收到请求以后,会根据配置文件(web.xml)找到对应的 Servlet 类,将它加载并实例化,然后调用其中的方法来处理用户请求;处理结束后,Servlet 容器将处理结果再转交给 Web 服务器,由 Web 服务器将处理结果进行封装,以 HTTP 响应的形式发送给最终的用户。

    (5)常用的 Web 容器有 Tomcat等。 Web 容器往往也会自带 Web 服务器模块,提供基本的 HTTP 服务,只是功能不够强大。

            

    2.1  容器Tomcat

             Tomcat中有很多的目录

             (1)bin 目录: 存放 Tomcat 命令,比如启动Tomcat、关闭Tomcat

             (2)conf 目录:存放 Tomcat 的配置文件,比如设置域名、IP、端口号等

             (3)webapps 目录:存放应用程序(也就是通常所说的网站),Tomcat 启动时会去加载 webapps 目录下的应用程序,我们编写的 Servlet 程序就可以放在这里

            (4)……

3. Servlet创建方式

        (1)一个动态网页对应一个 Servlet 类,通过 web.xml 配置文件将 URL 路径和 Servlet 类对应起来。

        (2)访问一个动态网页实际上是将对应的 Servlet 类加载、实例化并调用相关方法的过程;网页上显示的内容就是 Servlet 类中的某些方法向浏览器输出的 HTML 语句。

        (3)创建 一个Servlet 类,就是继承提供的类,然后重写某些方法而已。

                  

4. Servlet接口

         

     示例代码:

       

 

 

    看到了第6节   Servlet的部署和访问