将servlet重定向到另一个html页面。

5
我有两个html页面-一个用于登录,另一个用于输入个人详细信息。登录页面是第一页,当数据库检查用户名和密码时,用户被允许输入他们的详细信息。SQL代码运行完美,只是我遇到了映射问题。顺便提一下,我正在使用Tomcat服务器。请问有人能帮忙看看我错在哪里吗?
这是我的java代码,用于登录和输入详细信息。
public class Details extends HttpServlet {

private Connection con;

public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {

  res.setContentType("text/html");
  //return writer
  PrintWriter out = res.getWriter();   

  String username = req.getParameter("username");
  String password = request.getParameter("password");

  out.close();

  try {
    login(username, password);
  } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
  }

  res.sendRedirect("/redirect.html"); 

   String name = request.getParameter("name");
   String address = request.getParameter("address");
   String age = request.getParameter("age");

    out.println("<HTML><HEAD><TITLE>Personnel Details</TITLE></HEAD><BODY>");
    out.println(name + address + age);
    out.println("</BODY></HTML>");
    System.out.println("Finished Processing");
}

out.close();


}

在我的web.xml文件中,我有:

<web-app>

  <servlet>
    <servlet-name>Details</servlet-name>
    <servlet-class>Details</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>Details</servlet-name>
    <url-pattern>/Details</url-pattern>
  </servlet-mapping>

 <servlet-mapping>
<servlet-name>redirect</servlet-name>
<url-pattern>/redirect</url-pattern>


你能告诉我,你的 redirect.html 页面的位置在哪里吗? - dev
@amit4497,redirect.html与index.html位于相同的位置-C:\ Users \ MyName \ Downloads \ apache-tomcat-8.0.14 \ webapps \ details。 - fathertodumptious
3个回答

9
您可以尝试这样做:
response.sendRedirect("redirect.html");

或者

response.setStatus(response.SC_MOVED_TEMPORARILY);
response.setHeader("Location", "redirect.html");

另一种方式,

ServletContext sc = getServletContext();
sc.getRequestDispatcher("/redirect.html").forward(request, response);

2
最初的回答

重定向至HTML

RequestDispatcher ds = request.getRequestDispatcher("index.html");
ds.include(request, response);

1
您可以使用以下代码之一进行重定向:1.response.sendRedirect("redirect.html")
2.String path= "/redirect";

RequestDispatcher dispatcher =servletContext().getRequestDispatcher(path);

dispatcher.forward(request,response);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接