java - 基于 HTML 页面操作重定向到其他 servlet
问题描述
这里我有 2 个 servlet
@WebServlet("/Login")
public class Login extends HttpServlet {
.........
.........
}
@WebServlet("/Create")
public class Create extends HttpServlet {
.........
.........
}
还有一个像这样的 HTML 页面。
<form name="loginForm" method="post" action="Login">
<table width="20%" bgcolor="0099CC" align="center">
<tr>
<td colspan=2>
<center>
<font size=4><b>HTML Login Page</b></font>
</center>
</td>
</tr>
<tr>
<td>Username:</td>
<td><input type="text" size=25 name="username"></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="Password" size=25 name="password"></td>
</tr>
<tr>
<td><input type="submit" onclick="return check(this.form)" value="Login"></td>
</tr>
<tr>
<td><input type="submit" onclick="return check(this.form)" value="Create profile"></td>
</tr>
</table>
</form>
当用户单击创建配置文件时,我想重定向到创建 servlet。谁能帮我这个?
解决方案
您有一个表单,并且希望它转到两个不同的 servlet。你不能那样做。如果您想先转到登录 servlet,然后转到创建 servlet。您可以查看 requestDispatcher 或 httpServletresponse.sendRedirect()
RequestDispatcher rd=request.getRequestDispatcher("servlet Name")
rd.forward(request, response);
或通过
response.sendRedirect("/url");
或者,如果您根本不想登录 servlet 并直接创建,则使用两种表单,一种用于登录,另一种用于创建配置文件。
<form name="loginForm" method="post" action="Create">
<tr>
<td><input type="submit" onclick="return check(this.form)" value="Create profile"></td>
</tr>
推荐阅读
- linux-kernel - Linux NFS 客户端:stat 导致正在进行的 readdirplus 迭代重新启动到较早的 cookie
- video - 如何使用 ffmpeg 通过 RTP 循环播放视频?
- php - 如何用php正确分页这个json数组?
- c# - 如何在 asp.net core 中使用 Mailkit 通过“联系我们”表单发送电子邮件
- python - 使用 ScatterPlotItem 和 PlotCurveItem 时有没有办法隐藏 x 和 y 轴
- elasticsearch - ElasticSearch - 如何从动态字段元数据中查询查询?
- javascript - 如何使用用户输入来形成画布形状
- sql - 有没有办法通过 ID 将一个热编码列合并到一个记录中
- google-api - Google API 在命令 bazel 构建时出现错误 //
- php - 会话在 PHP 7.3 上不能正常工作,但在 7.0 上工作正常