RequestDispatcher对象是用来引用或跳转到其它的JSP或SERVLET。前面文章中使用我使用的是request对象来做的,其实做跳转还可以使用ServletContext对象:
public RequestDispatcher getRequestDispatcher(String url) 数据挖掘研究院
public RequestDispatcher getNamedDispatcher(String name)
在使用getRequestDispatcher方法时,一定要注意,后面的URL必须以“/”开头,这个URL是相对于你在WEB上的虚拟路径,而使用getNamedDispatcher方法则后面的参数是在web.xml文件中设置的相应servlet文件的名字。
如:
在web.xml中有如下设置: 数据挖掘研究院
<servlet>
<servlet-name>loginServletName</servlet-name>
<servlet-class>com.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServletName</servlet-name>
<url-pattern>/loginServlet</url-pattern>
</servlet-mapping> 数据挖掘研究院
如果在servlet中,用ServletContext取得这个SERVLET资源则用如下语句:
RequestDispatcher d = getServletContext().getRequestDispatcher("/loginServlet"); 数据挖掘实验室
RequestDispatcher d = getServletContext().getNameDispatcher("/loginServletName");
上面是两个不同的设置方法,但指向的资源是相同的。 数据挖掘研究院

