使用scriptlet代码从jsp重定向

时间:2011-12-31 07:04:15

标签: jsp redirect

我的应用程序有一个JSP,它使用scriplet代码根据某些条件重定向到页面。

但正在发生的是,在重定向代码response.redirect(..)之后,下面的代码正在执行。我不想执行下面的代码或加载JSP页面,我只是想立即重定向。请参阅以下示例,请告诉我解决方案。

<html>
<body>
<%
    boolean condition = true;
    if(condition)
        response.sendRedirect("http://www.google.co.in");
    System.out.println("I don't want to execute this code, I just want to redirect after above line");
%>
</body>
</html>

2 个答案:

答案 0 :(得分:4)

sendRedirect完成后即可使用Return语句。在这种情况下,下面的代码将不会被执行。

if(condition){
     response.sendRedirect("http://www.google.co.in");
     return;
}

答案 1 :(得分:1)

只有在完整执行整个代码块之后,控件才会传递到下一个URL,sendRedirect之后的任何语句都会被执行。

如果您不想打印该语句,则应该将该行从那里移动到else块中的某个位置。

<%
    boolean condition = true;
    if(condition)
     response.sendRedirect("http://www.google.co.in");
    else
       System.out.println("I don't want to execute this code, I just want to redirect after         above      line");
%>