首页IT科技yis翻译中文是什么意思(day11-Servlet01)

yis翻译中文是什么意思(day11-Servlet01)

时间2025-08-05 08:05:44分类IT科技浏览4221
导读:Servlet01 官方api文档:https://tomcat.apache.org/tomcat-8.0-doc/servletapi/index.html...

Servlet01

官方api文档:https://tomcat.apache.org/tomcat-8.0-doc/servletapi/index.html

Servlet和Tomcat的关系:一句话             ,Tomcat支持Servlet

Servlet是跟Tomcat关联在一起的                    ,换而言之       ,Tomcat是哪个版本             ,就对应哪个版本的Servlet

1.为什么需要Servlet?

需求:请用你现有的html                   ,css       ,javascript       ,开发网站                   ,比如可以让用户留言/购物/支付             ,你能搞定吗?

这就需要引入我们的动态网页(能和用户交互)技术===>Servlet

我们对之前的JavaWeb技术体系图进一步地细化:

Tomcat的web服务拿到一个请求后:

如果web服务发现是该请求是和java相关的       ,或者说是一个Servlet(动态请求                    ,比如说可能会去操作数据库)             ,那么Tomcat会去寻找Servlet,Servlet又去调用java程序                    ,进行数据库操作

如果Tomcat的web服务发现请求的是一个静态资源                    ,比如html,图片等             ,就直接拿到该资源                    ,然后返回       ,不会和java程序或者数据库发生关系

因此我们说Tomcat其实是有两个功能的:一是充当Servlet的容器;二是充当普通的web服务

只支撑静态资源返回的还有apache             ,如果是一个静态资源的网站                   ,不需要和数据库进行交互       ,其实完全可以使用Apache来作为web服务       ,或者只使用一个Nginx就可以了

2.什么是Servlet?

什么是Servlet

Servlet在开发动态WEB工程中得到了广泛地应用                   ,掌握好Servlet非常重要             ,Servlet是SpringMVC的基础

Servlet(java服务器小程序)       ,它的特点有:

它是由服务器调用和执行的

即由tomcat解析和执行的

它是用java语言编写的                    ,本质就是Java类

它是按照Servlet规范开发的(接口)             ,Servlet本质就是一套接口规范

除了Tomcat可以去解析Servlet,weblogic也可以支持 Servlet                    ,即只要按照规范去开发接口                    ,就可以支持Servlet,类似于jdbc的接口规范

功能强大             ,几乎完成所有的网站功能

3.Servlet基本使用

3.1Servlet开发方式说明

Servlet3.0前使用web.xml                    ,Servlet3.0版本以后(包括3.0)支持注解       ,同时支持web.xml配置 如何查看Servlet版本 Servlet的讲解只是为了知道Servlet的使用原理(原生的Servlet在项目中使用很少) 不管使用哪种方式             ,本质都一样

3.2快速入门-手动开发Servlet

例子

需求说明:

开发一个HelloServlet 当浏览器访问http://localhost:8080/web应用名/helloServlet时                   ,后台输出“hi HelloServlet             ”

思路:

编写类HelloServlet去实现Servlet接口

实现service方法       ,处理请求       ,并响应数据

在web.xml中去配置Servlet程序的访问地址

首先创建web工程                   ,配置好Tomcat

添加servlet-api.jar(在你安装的tomcat/lib下)到工程             ,因为servlet.jar不是jdk自带的       ,要引入才可以使用

在idea项目的web/WEB-INF下创建一个lib目录                    ,将servlet-api.jar拷贝进去             ,然后右击jar包,点击add as library                    ,在弹出的窗口中点击ok即可

在src包下面创建HelloServlet.java                    ,并实现Servlet接口

package com.li.servlet; import javax.servlet.*; import java.io.IOException; /** * 1.开发一个servlet,需要实现Servlet接口 * 2.实现Servlet接口的方法:一共有5个 */ public class HelloServlet implements Servlet { /** * 1.初始化 Servlet * 2.当创建HelloServlet实例时             ,会调用init方法 * 3.该方法只会被调用一次 * * @param servletConfig * @throws ServletException */ @Override public void init(ServletConfig servletConfig) throws ServletException { System.out.println("init() 被调用"); } /** * 返回ServletConfig对象 也就是返回Servlet的配置 * * @return */ @Override public ServletConfig getServletConfig() { return null; } /** * 1.service方法处理浏览器的请求(包括get/post) * 2.当浏览器每次请求Servlet时                    ,就会调用一次server方法 * 3.当Tomcat调用该方法时       ,会把http请求的数据封装成 实现了ServletRequest接口 的request对象 * 4.通过servletRequest对象             ,就可以得到用户提交的数据 * 5.servletResponse对象可以用于返回数据给Tomcat-->浏览器 * * @param servletRequest * @param servletResponse * @throws ServletException * @throws IOException */ @Override public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("hi HelloServlet~"); } /** * 返回servlet的信息                   ,使用较少 * * @return */ @Override public String getServletInfo() { return null; } /** * 1.该方法是在servlet被销毁时       ,被tomcat调用 * 2.只会调用一次 */ @Override public void destroy() { } }

实现了接口之后       ,在web.xml配置HelloServlet                   ,即给HelloServlet提供对外的访问地址

目的是为了告诉Tomcat服务器             ,HelloServlet在哪里

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <!--web.xml文件主要用来配置该web应用使用到的Servlet--> <!--配置HelloServlet--> <!--解读: 1.servlet-name:给Servlet取名(任意)       ,该名字唯一 2.servlet-class:Servlet的类的全路径                    ,Tomcat在反射生成该Servlet类实例时需要使用 3.servlet-mapping里的servlet-name要和上面的servlet-name保持一致 4.url-pattern:这个就是该Servlet访问的url的配置(路径) 5.这时我们应该这样访问Servlet:http://localhost:8080/web应用名/helloServlet 5.url-pattern的取名也是随意的(注意加上斜杠) --> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>com.li.servlet.HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/helloServlet</url-pattern> </servlet-mapping> </web-app>

设置 快捷键ctrl+/ 可以在当前位置注释             ,而不是在行

访问HelloServlet(记得要reploy或者restart)

可以自己配置快捷键启动

浏览器访问:

后台输出:可以看到init方法只调用了一次,而每次访问都会调用server方法

4.浏览器调用Servlet流程分析

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
mac的计算器在哪儿打开(mac系统计算器怎么计算面积? mac计算器算面积的技巧)