请问关于RequestDispatcher重定向后,它下面的语句还执行吗???
peppi 2002-10-16 10:39:25 我有一段测试用的程序:
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
String s = null;
RequestDispatcher a = this.getServletContext().getRequestDispatcher("/a.html");
RequestDispatcher b = this.getServletContext().getRequestDispatcher("/b.html");
RequestDispatcher c = this.getServletContext().getRequestDispatcher("/c.html");
RequestDispatcher d = this.getServletContext().getRequestDispatcher("/d.html");
s = request.getParameter("text"); //对S进行判断,根据不同值转向不同页
if (s.equals("a"))
{
a.forward(request,response);
return;
}
if (s.equals("b"))
{
b.forward(request,response);
return;
}
if (s.equals("c"))
{
c.forward(request,response);
return;
}
System.out.println(1); //用于测试,看是否重定向后执行此句
d.forward(request,response);
}
我发现,不管有没有return这句,在执行某一个转向后(d的转向除外),都会输出"1",而我觉得在实现转向后,就不该执行它后面的语句了,现在它执行了,我怎么能让它不执行呢?