当前位置: 首页 > wzjs >正文

网站使用教程关键词免费网站

网站使用教程,关键词免费网站,开公司流程,品牌推广是什么目录 servlet-api.jar 导入问题 Content-Type 响应头的问题 Servlet 映射细节 WebServlet 注解使用 完! servlet-api.jar 导入问题 在上篇文章中,我们的 service 方法直接 extends 了 HttpServlet 追根溯源,可以发现,HttpSe…

目录

servlet-api.jar 导入问题

Content-Type 响应头的问题

Servlet 映射细节

@WebServlet 注解使用

完!


servlet-api.jar 导入问题

在上篇文章中,我们的 service 方法直接 extends 了 HttpServlet

追根溯源,可以发现,HttpServlet 也是实现了 Servlet 接口

这个 Servlet 接口,并非是我们下载的基础类库 jdk 中的配置

是在 一个 servlet.jar 的 jar 包中的

此时进行思考,jar 包的导入,我们前面不是提到过吗?

应该在 WEB-INF 中创建一个 lib 文件夹,然后将需要的 jar 包导入进去即可~ 但我们上篇在这个项目中,并没有导入 jar 包呀~ 为什么还可以正常找到 Servlet 这个接口呢?

但我们是在开始的时候,project setting 中的 Dependency 中 导入了 Tomcat 依赖~

其实是:servlet-api,仅是在编码的时候需要,当运行的时候,在服务器的环境中,由服务软件(Tomcta)提供。因此,我们的 Javaweb 项目中,在打包 / 构建的过程中,无需携带 servlet-api 的 jar 包

Content-Type 响应头的问题

我们的上个 Javaweb 工程中,在点击“校验”按钮后,会运行 userServlet 的代码,然后做出响应给浏览器。我们在浏览器中打开 F12 的开发者模式

在响应报文中,我们并没有找到 Content-Type 这一属性~

==》

即,如果我们没有手动设置 Content-Type,其默认属性是 html

流程如下图:

下面是在 tomcat 文件夹 conf/web.xml 中,对 html png 进行的查找~

可见,tomcat 的 con/web.xml 中包含着绝大部分我们文件类型对应的 Content-Type

我们希望浏览器以什么形式来解析我们的响应,应该在响应中头,手动设置 Content-Type 的值

因为 Content-Type 的重要性,也专门为其设置了一个 API

Servlet 映射细节

为了方便介绍,我们再创建一个 Servlet 类

因不需要其实现什么功能,则仅输出一句话即可~

package com.zzz.servlet;import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;import java.io.IOException;/** @author zzr* @date: 2025/07/04  16:33* @description: 测试 servlet 注解*/
public class servlet1 extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("servlet1 执行了");}
}

然后为这个 servlet1 配置环境,在 web.xml 中进行配置 servlet 和 servlet-mapping

在打印的地方打一个断点,然后运行项目

在 url 后面配置上我们刚刚的路径 s1

发现代码卡在断点处,继续向下运行,打印出了“servlet1 执行了”

过程如下图所示:

通过反射获取字节码,反射执行 servlet 代码~


一个 servlet-name 可以同时对应多个 url-pattern

一个 servlet 标签,也可以同时对应多个 servlet-mapping


url-pattern 

        1. 精确匹配

                /servlet1

        2. 模糊匹配

                * 作为通配符,* 在哪里,哪里就是模糊的

                / :匹配全部,不包括 jsp 文件

                /* :匹配全部,包括 jsp 文件

                /a/*:匹配前缀,后缀模糊

                *.action:匹配后缀,前缀模糊

@WebServlet 注解使用

我们可以在 servlet 类的前面,使用 @WebServlet 注解,来替换掉 Servlet 配置:

注意:使用了 @WebServlet 注解的话,就不要在 web.xml 中再进行配置了~

我们可以看一下 WebServlet 中的接口,其实际的代码是需要下载 jar 包才可查看的,这里是一些反字节码文件~

也可以配置多个映射路径:

完!

http://www.dtcms.com/wzjs/154106.html

相关文章:

  • 网站制作系统建站系统主要包括
  • 公司做网站费用计什么科目注册网站平台
  • 个人风采网站制作怎样做关键词排名优化
  • 淮北网站建设新产品推广方式有哪些
  • 做网站用的什么空间谷歌google浏览器官方下载
  • 使用bootstrap做的网站网游百度搜索风云榜
  • 美空wordpress主题宁波免费建站seo排名
  • asp.net做登录注册网站网络营销岗位
  • 哪个免费自助建站系统最好用企业网站多少钱一年
  • 做一个模板网站多少钱外链购买平台
  • 保山公司网站建设郑州seo服务公司
  • 免费下载ps素材网站百度竞价排名费用
  • 网站建设 无锡谷歌官方网站登录入口
  • 网站建设咨询有客价优网站建政府免费培训面点班
  • 未来对网站建设的需求谷歌seo排名优化服务
  • 常州市住房建设局网站站长工具爱情岛
  • 深圳做公司网站海口seo快速排名优化
  • 番禺网站开发哪家专业自主建站
  • 网站建设月薪优化的含义是什么
  • 分类信息网站的建设维护苏州新闻今天最新消息新闻事件
  • 长沙手机网站设计公司百度app下载并安装最新版
  • 网站seo快排软件seo网站优化服务合同
  • 做网站 智域大连推广赚钱的软件
  • 贵州网站建设推荐上海谷歌seo推广公司
  • 卫生系统网站的建设和维护seo优化推荐
  • 上线了做网站要钱长春网站快速优化排名
  • 郑州做网站公哪个网站学seo是免费的
  • it前端是做网站的网上推广app怎么做
  • 武汉三镇百度关键词相关性优化软件
  • 企业 北京 响应式网站百度客服人工电话