Jsp 表单中的请求调度程序

Jsp 表单中的请求调度程序,jsp,request,requestdispatcher,Jsp,Request,Requestdispatcher,我在jsp文件中有一个表单,用于获取用户详细信息。单击submit按钮时,表单操作被设置为另一个jsp文件,在该文件中,详细信息被插入到数据库中。 但在此之前,只要用户输入userid,就会有一个checkavailability按钮。 单击按钮后,我希望控件转到另一个jsp页面,并将用户名作为参数。在那里,我正在检查可用性。我想返回对上一个jsp文件的响应。 这可以使用“请求调度器”来完成吗。如果是,请说明请求调度器的包含和转发方法。我试着在网上搜索它。只有代码可用。我想知道这个请求调度器是什

我在jsp文件中有一个表单,用于获取用户详细信息。单击submit按钮时,表单操作被设置为另一个jsp文件,在该文件中,详细信息被插入到数据库中。 但在此之前,只要用户输入userid,就会有一个checkavailability按钮。 单击按钮后,我希望控件转到另一个jsp页面,并将用户名作为参数。在那里,我正在检查可用性。我想返回对上一个jsp文件的响应。
这可以使用“请求调度器”来完成吗。如果是,请说明请求调度器的包含和转发方法。我试着在网上搜索它。只有代码可用。我想知道这个请求调度器是什么,以及它是如何工作的

请求分派器将请求分派给给定的目标。请求调度器基本上将控制传递给给定的目标。对于JSP,JSP将处理给定的请求并将其输出发送到给定的响应

include()
方法允许您在控件返回后继续使用响应,以便在必要时添加一些数据。不允许包含的目标操作响应头。
include()
的目标应该是最终响应的一部分。
forward()
方法允许您将控件完全传递给给定目标。允许转发的目标操作响应头。
forward()
的目标应该是整个JSP文件本身,您希望将其完整地呈现出来(反过来也可以包含其他JSP)


在这种情况下,您需要发送转发。哦,这种工作不属于JSP,而是属于JSP。否则,当您尝试转发请求的JSP已经向响应发送了一些数据时,您可能会遇到
IllegalStateException
s。因此,当用户单击“检查可用性按钮”时,我可以使用include方法检查用户可用性。输出(“用户名可用”或“不可用”)是否会显示在同一页面(原始页面)上。也可以,但这显然很笨拙,您仍然需要将其包装在JSTL
中以有条件地包含它。我会用EL打印信息。当请求属性存在时,它会显示出来,否则它什么也不会显示。像这样
${message}