JavaWeb 实现Servket虚拟路径的映射

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40788630/article/details/83049475

在编写的servlet文件时需要一个配置文件,一般情况下都是web.xml中文件,但是在创建网页文件是2.5以上版本时会使用注解,从而减少了对配置文件的操作。

如图1所示,修改的servlet文件

为了学习Servket虚拟路径的映射,我们先将servlet的文件中的注释语句去除,去除后的servlet的文件如下所示:

package cn.itheima.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class TestServlet01
 */

public class TestServlet01 extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		PrintWriter out = response.getWriter();
		out.print("this servlet id created by eclipse");
	}
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
	}

}

2,修改配置文件的web.xml

修改过后的web.xml文件代码如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>2chapter03</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>TestServlet01</servlet-name>
    <servlet-class>cn.itheima.servlet.TestServlet01</servlet-class>
  </servlet>
  <!-- 映射为TestServlet01 -->
  <servlet-mapping>
    <servlet-name>TestServlet01</servlet-name>
    <url-pattern>/TestServlet01</url-pattern>
    <url-pattern>/Test02</url-pattern>
  </servlet-mapping>
  <!-- 映射为Test01 -->
  <servlet-mapping>
    <servlet-name>TestServlet01</servlet-name>
    <url-pattern>/Test01</url-pattern>
  </servlet-mapping>
</web-app>

3、验证虚拟路径是否能够访问

在浏览器的网址栏中填入http://localhost:8080/2chapter03/Test01

在浏览器的网址栏中填入http://localhost:8080/2chapter03/Test02

由此可以证明,无论是通过添加新的<url-pattern>/Test02</url-pattern>,还是新建

<servlet-mapping>
    <servlet-name>TestServlet01</servlet-name>
    <url-pattern>/Test01</url-pattern>
  </servlet-mapping>

都可以创建新的虚拟路径

猜你喜欢

转载自blog.csdn.net/qq_40788630/article/details/83049475