Servlet路径跳转问题

来源:互联网 发布:windows驱动器被锁定 编辑:程序博客网 时间:2024/05/21 05:38

这篇文章主要介绍Servlet当中页面重定向应该如何正确地写地址的问题,首先来看一下Servlet的配置文件web.xml

<servlet>        <servlet-name>TestServlet</servlet-name>        <servlet-class>servlet.TestServlet</servlet-class>    </servlet>    <servlet-mapping>        <servlet-name>TestServlet</servlet-name>        <url-pattern>/servlet/TestServlet</url-pattern>    </servlet-mapping>

在这里,url-pattern路径必须以“/”开头,因为斜杠表示根目录。

在Servlet类中,如果需要重定向到某一页面(这里举例是更目录下的test.jsp),如下方式是错误的:

response.sendRedirect("test.jsp");

正确的写法如下:

response.sendRedirect(request.getContextPath() + "/test.jsp");

如果是服务器内部的跳转问题,那么如下的写法是错误的:

request.getRequestDispatcher("test.jsp").forward(request, response);

正确的写法有以下两种:

request.getRequestDispatcher("/test.jsp").forward(request, response);

request.getRequestDispatcher("../test.jsp").forward(request, response);


0 0
原创粉丝点击