Servlet:相对路径、绝对路径以及路径跳转问题

来源:互联网 发布:ios开源app源码 编辑:程序博客网 时间:2024/04/30 07:29

    在访问Servlet的过程中,可能有不同的访问方式,进行路径跳转时有很多种方法,现在我们来一起总结一下:
1、在jsp页面中访问Servlet
相对路径:

 <a href="servlet/Path">相对路径访问Servlet</a> //相对路径是针对当前资源的路径,Path相对于当前路径path.jsp而言是在servlet/Path这一路径下的

注意不能写成:

<a href="/servlet/Path">相对路径访问Servlet</a>//其中的第一个/代表服务器的根目录

绝对路径:

 <a href="<%=path%>/servlet/Path">绝对路径访问Servet</a> //利用jsp页面中的path变量,path变量表示项目的根目录

2、配置文件中的路径:

<url-pattern>/servlet/Path</url-pattern>//这里的第一个/不能省略,表示的是项目的根目录

3、路径跳转问题:
请求重定向:

response.sendRedirect(request.getContextPath()+"/information.jsp");//通过request.getContextPath()来获取上下文环境

注意不能写成:

response.sendRedirect("information.jsp");//此时的当前路径为ServletPathDirection/servlet/

服务器内部跳转:

request.getRequestDispatcher("/information.jsp").forward(request, response);//斜线表示项目的根目录

也可以写成:

request.getRequestDispatcher("../information.jsp").forward(request, response);//..表示回到上层目录

注意不能写成:

request.getRequestDispatcher("information.jsp").forward(request, response);//不带斜线时表示的是一种相对路径
阅读全文
0 0