该方法response.sendRedirect是()不是在我的计划工作。
该代码经历和成功地打印out.println("wrong user");
,但重定向到谷歌分页不起作用。
String id="java";
try
{
query = "select Id from Users where Id= ?";
ps =Database.getConnection().prepareStatement(query);
ps.setString(1, id);
rs = ps.executeQuery();
if(rs.next())
{
out.println(rs.getString(1));
}
else
{
out.println("wrong user");
response.sendRedirect("www.google.com");
}
rs.close();
}
catch(Exception e)
{
//e.printStackTrace();
System.out.print(e);
}
任何答案?
你应该return
重定向后。
response.sendRedirect("http://www.google.com");
return;
它不会调用的sendRedirect后自动返回()。
HttpServletResponse.sendRedirect() works like this:
- if the URL is absolute
http://www.google.com
, it redirects to http://www.google.com
.
- If the URL is not absolute , it redirects relative to the current URL.
If the URL starts with
/
it redirects relative to the context root,
Else it redirects to the current url
Based on above rules in your case it redirects to http://currenturl/www.google.com
.
Instead modify your code like this
response.sendRedirect("http://www.google.com");
return;
试试这个
<% response.sendRedirect("http://www.google.com/"); %>
请尝试提供的协议。
response.sendRedirect("http://www.google.com");
return;