Servlet
简介:
  • servlet就是sun公司开发动态web的一门技术
  • Sun在这些API中提供一个接口叫做:Servlet,如果逆向开发一个Servlet程序,只需要完成两个小步骤:
1、编写一个类,实现servlet接口
2、把开发好的Java类部署到web服务器中
把实现了Servlet接口的Java程序叫做Servlet
 
HolleServlet
Servlet接口 sun公司有两个默认的实现类:HttpServlet,GenericServlet
 
构建一个普通的maven项目,删掉里面的src目录,以后我们的学习就在这个项目里建立Moudel;这个空的工程就是maven主工程;
导入maven依赖:

(版本不一样的话可以到maven仓库中找适合自己的版本)

<!-- Servlet依赖 -->
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<!-- JSP依赖 -->
<!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.3</version>
<scope>provided</scope>
</dependency>
关于maven仓库父子工程的理解:
父项目中的jar包子项目可以直接使用
 
如何编写一个Servlet程序:
  1. 编写一个普通类
  2. 实现Servlet接口,直接继承HttpServlet
  3. 重写get、post方法
编写Servlet的映射:
为什么需要映射:我们写的是Java程序,但是需要浏览器访问,而浏览器需要连接web服务器,所以我们需要在web服务中注册我们的Servlet,还需要给它一个浏览器能够访问的路径。
在web.xml中:
<!-- 注册Servlet -->
<servlet>
<servlet-name>Name</servlet-name>
<servlet-class>ClassPath(类的路径:例如com.srx.Servlet.servletTest)</servlet-class>
</servlet>
<!-- Servlet的请求路径 -->
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>/Url</url-pattern>
</servlet-mapping>
 
Mapping问题
  1. 一个Servlet可以指定一个映射路径
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>/Url</url-pattern>
</servlet-mapping>
  1. 一个Servlet可以指定多个映射路径(多个路径可以同时指向一个Servlet)
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>/Url2</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>/Url3</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>/Url4</url-pattern>
</servlet-mapping>
  1. 一个Servlet可以指定通用映射路径(在请求时路径后任意输入都可以响应到指定Servlet)
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>/Url/*</url-pattern>
</servlet-mapping>
  1. 指定一些后缀或者前缀等(可以自定义后缀实现请求映射,星号前面不能加映射路径)
<servlet-mapping>
<servlet-name>Name</servlet-name>
<url-pattern>*.任意后缀</url-pattern>
</servlet-mapping>
优先级问题:指定了固定的映射路径优先级最高,如果找不到的话就会走默认的处理请求。

Servlet概念及配置的更多相关文章

  1. TOMCAT ---> servlet概念

    1 TOMCAT ---> servlet概念 2 TOMCAT 目录结构 (各个文件夹都存放什么东西) 3 TOMCAT 程序的层级 web | |---- js,jsp,html,css ( ...

  2. servlet篇 之 servlet概念及其功能实现

    Servlet概念: 在JavaWeb中,把那些可以使用浏览器通过url的形式来访问的java类,叫做servlet. servlet就是java类中的一种,只不过这种java类有一个特殊的功能,就是 ...

  3. Servlet 规范笔记—servlet概念及结构

     Servlet, 这个词对java程序员并不陌生,我想几乎每个java程序员在学习J2EE知识时,首先学习的就是servlet,这是一种正确的学习方式,在我看来Servlet是J2EE的基础,要熟练 ...

  4. 4_7.springboot2.x嵌入式servlet容器自动配置原理

    概述 Spring Boot对所支持的Servlet Web服务器实现做了建模抽象: Servlet容器类型  WebServer模型接口 WebServer工厂实现类 Tomcat    Tomca ...

  5. DNS,TCP,IP,HTTP,socket,Servlet概念整理

    DNS,TCP,IP,HTTP,socket,Servlet概念整理   常见的协议虽然很容易理解,但是看了之后过一段时间不看还是容易忘,笔记如下,比较零碎,勉强供各位复习.如有错误欢迎指正.   D ...

  6. servlet两种配置方法详解

     1.web.xml中Servlet的注解 <servlet> <!-- servlet的内部名称,自定义 --> <servlet-name>DemoAction ...

  7. 尚硅谷springboot学习26-嵌入式servlet容器自动配置、启动原理

    EmbeddedServletContainerAutoConfiguration:嵌入式的Servlet容器自动配置 @AutoConfigureOrder(Ordered.HIGHEST_PREC ...

  8. [javaEE] Servlet的手动配置

    一.Servlet sun提供的一种动态web资源开发技术,本质上就是一段java小程序,可以将Sevlet加入到Servlet容器中 *Servlet容器 -- 能够运行Servlet的环境就叫做S ...

  9. 嵌入式Servlet容器自动配置和启动原理

    EmbeddedServletContainerAutoConfiguration:嵌入式的Servlet容器自动配置? @AutoConfigureOrder(Ordered.HIGHEST_PRE ...

随机推荐

  1. 图解Go里面的sync.Map了解编程语言核心实现源码

    基础筑基 在大多数语言中原始map都不是一个线程安全的数据结构,那如果要在多个线程或者goroutine中对线程进行更改就需要加锁,除了加1个大锁,不同的语言还有不同的优化方式, 像在java和go这 ...

  2. Python学习(三)基础

    一.函数与模块 定义函数: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 (). 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数. 函数的第一行语句可以选择性地使用 ...

  3. selenium自动化测试入门 定位frame和iframe中的元素对象

    < frame> <iframe> 标签,浏览器会在标签中打开一个特定的页面窗口(框架),它在本窗口中嵌套进入一个网页,当用selenium定位页面元素的时候会遇到定位不到fr ...

  4. Python第二天了哇

    在Python中input是接收用户输入的一个函数哇 a = int( b) 这个的意思是把b的值转换为整型? 好像是这个亚子 Python想要知道它的内置函数的话可以在Python的交互界面(She ...

  5. 使用Rancher Server部署本地多节点K8S集群

    当我第一次开始我的Kubernetes之旅时,我一直在寻找一种设置本地部署环境的方式.很多人常常会使用minikube或microk8s,这两者非常适合新手在单节点集群环境下进行操作.但当我已经了解了 ...

  6. 配置ca服务器和http,mail加密

    一·CA介绍 certificate authority   数字证书授权中心 被通信双方信任的.独立的第三方机构 负责证书颁发.验证.撤销等管理 数字证书 经证书授权中心数字签名的包含公开密钥拥有者 ...

  7. Spring中常见的设计模式——模板模式

    一.模板模式的应用场景 模板模式又叫模板方法模式(Template Method Pattern),指定义一个算法的骨架,并允许自雷为一个或者多个步骤提供实现.模板模式使得子类可以在不改变算法结果的情 ...

  8. SpringBoot-2.1.1系列二:使用websocket

    1.什么是websocket? WebSocket协议是基于TCP的一种新的网络协议.它实现了浏览器与服务器全双工(full-duplex)通信--允许服务器主动发送信息给客户端. 2.为什么需要使用 ...

  9. 这份前端面试小册子dog cheng带来啦~

    写在前面 没有错,就是我啦dog cheng,好久不见,从17年在博客园写下第一篇文章,转身间已然两年,从大二到现在的大四预备毕业生,我仍然在这条道路上前进.秋招早已经结束,在拿到用友,滴滴的offe ...

  10. Educational Codeforces Round 80 D E

    A了三题,rk1000左右应该可以上分啦,开