Servlet概念及配置

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仓库:https://mvnrepository.com/

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



<dependency>
    <groupId>javax.servletgroupId>
    <artifactId>javax.servlet-apiartifactId>
    <version>4.0.1version>
    <scope>providedscope>
dependency>

 



<dependency>
    <groupId>javax.servlet.jspgroupId>
    <artifactId>javax.servlet.jsp-apiartifactId>
    <version>2.3.3version>
    <scope>providedscope>
dependency>
关于maven仓库父子工程的理解:
父项目中的jar包子项目可以直接使用
 
如何编写一个Servlet程序:
  1. 编写一个普通类
  2. 实现Servlet接口,直接继承HttpServlet
  3. 重写get、post方法
编写Servlet的映射:
为什么需要映射:我们写的是Java程序,但是需要浏览器访问,而浏览器需要连接web服务器,所以我们需要在web服务中注册我们的Servlet,还需要给它一个浏览器能够访问的路径。
在web.xml中:

<servlet>
    <servlet-name>Nameservlet-name>
    <servlet-class>ClassPath(类的路径:例如com.srx.Servlet.servletTest)servlet-class>
servlet>

<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>/Urlurl-pattern>
servlet-mapping>
 
Mapping问题
  1. 一个Servlet可以指定一个映射路径
<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>/Urlurl-pattern>
servlet-mapping>
  1. 一个Servlet可以指定多个映射路径(多个路径可以同时指向一个Servlet)
<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>/Url2url-pattern>
servlet-mapping>
<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>/Url3url-pattern>
servlet-mapping>
<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>/Url4url-pattern>
servlet-mapping>
  1. 一个Servlet可以指定通用映射路径(在请求时路径后任意输入都可以响应到指定Servlet)
<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>/Url/*url-pattern>
servlet-mapping>
  1. 指定一些后缀或者前缀等(可以自定义后缀实现请求映射,星号前面不能加映射路径)
<servlet-mapping>
    <servlet-name>Nameservlet-name>
    <url-pattern>*.任意后缀url-pattern>
servlet-mapping>
优先级问题:指定了固定的映射路径优先级最高,如果找不到的话就会走默认的处理请求。

你可能感兴趣的:(Servlet概念及配置)