Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ServletRequest和ServletContext接口中getRequestDispatcher()中的单个方法_Java_Servlets - Fatal编程技术网

Java ServletRequest和ServletContext接口中getRequestDispatcher()中的单个方法

Java ServletRequest和ServletContext接口中getRequestDispatcher()中的单个方法,java,servlets,Java,Servlets,嗨 我想知道在ServletRequest和ServletContext接口中有一个名为getRequestDispatcher()的方法。有什么区别 如合同中所述 此方法[ServletRequestOne]与ServletContext.getRequestDispatcher(java.lang.String)之间的区别在于,此方法可以采用相对路径 可以将相对路径传递给ServletRequest的getRequestDispatcher(),但不能传递给ServletContext的ge

嗨 我想知道在ServletRequest和ServletContext接口中有一个名为getRequestDispatcher()的方法。有什么区别

如合同中所述

此方法[ServletRequestOne]与ServletContext.getRequestDispatcher(java.lang.String)之间的区别在于,此方法可以采用相对路径


可以将相对路径传递给ServletRequest的getRequestDispatcher(),但不能传递给ServletContext的getRequestDispatcher()

示例:

我当前的请求是从page-webapp/view/core/bar.jsp提供的 和请求的页面-webapp/view/util/foo.jsp

request.getRequestDispatcher(“../util/foo.jsp”)有效,并将根据相对于当前请求的路径进行计算

servletContext.getRequestDispatcher(“/view/util/foo.jsp”)有效,将从上下文根进行计算

这是因为ServletContext不会知道当前请求路径。
如果您决定使用“/”root访问您的资源,那么这两种方式都是相同的。

就我个人而言,我更喜欢链接到JavaEE规范中的文档,但那里的副本说明了相同的事情: