目前,我有一个正在运行的网站,允许用户在中输入密码。该表单将doPost()调用到Java HttpServlet文件,然后该文件检查输入的字段是否正确。
根据条件,它可以使用以下命令重定向到TryAgain或“菜单”页面
request.getRequestDispatcher("/WEB-INF/FOLDERNAME/Menu.jsp").forward(
request, response);
这部分工作正常,但是一旦进入菜单页面,我就有两个超链接,应将其重定向到/WEB-INF/FOLDERNAME/Multi.jsp或/WEB-INF/FOLDERNAME/Single.jsp
我需要保留这些页面,只有在初始密码表单页面上成功登录的用户才能访问这些页面,因此将它们放在我的/ WEB-INF /文件夹中。
我遇到的问题是如何使用HTML重定向到适当的页面(Multi.jsp / Single.jsp)?我认为将这两个超链接连接到两个单独的表单并调用request.getRequestDispatcher()。forward()有点过大。来自doPost(){}只是为了重定向用户。
是否有其他方法可以做到这一点?
我想出了一种方法,并希望与他人分享。
在我的Menu.jsp上,我创建了一个具有两个href属性的
<nav>
<ul>
<li><a href="../FOLDER/menu-servlet?roster">Upload Roster File</a></li>
<li><a href="../FOLDER/menu-servlet?manual">Manual Order</a></li>
</ul>
</nav>
这称为我的HttpServlet doGet()方法。在这里,我可以获取查询字符串,其后的文字是?在网址中。
然后,我在doGet()方法中做了一个简单的if比较。
String queryString =request.getQueryString();
// PrintWriter out = response.getWriter();
// out.println(request.getQueryString());
//check where to redirect
if (queryString.equals("roster")) {
//redirect to Roster Upload jsp
request.getRequestDispatcher("/WEB-INF/FOLDER/Roster.jsp").forward(request, response);
} else if (queryString.equals("manual")) {
//redirect to Manual Generation jsp
request.getRequestDispatcher("/WEB-INF/FOLDER/ManualOrder.jsp").forward(
request, response);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句