2

现在,我在单个 jsp 页面中调用了单个 servlet 表单操作。我想在同一个 jsp 页面中调用多个 servlet 表单操作。

4

2 回答 2

4

我认为您误解了 Servlet 的工作原理以及它们的用途。请记住,Servlet 用于服务客户端的请求并发送回响应。假设您在第一个 servlet 中处理用户的请求。

为什么要在同一个请求中调用另一个 servlet?是否执行不会在响应中添加任何内容的附加功能?如果是这种情况,那么您可能不需要另一个 servlet。您只需要扩展您的第一个 servlet 的功能。

如果您想调用另一个 servlet 向响应对象添加一些内容,那么最好修改第一个 servlet 的工作方式,并将第二个 servlet 的功能集成到第一个 servlet 中。

如果您的情况是您想将用户重定向到另一个 jsp/servlet 而不关心第一个 servlet 的响应,那么您可以选择request.sebdRedirect("yourJsp.jsp")orrequest.getRequestDispatcher("yourJsp.jsp").forward(request, response);这就是它们区别。

因此,关闭一切取决于您的业务逻辑......您必须选择适合您需求的选项

于 2012-10-11T06:04:39.090 回答
2

你不能在一个jsp表单中调用多个servlet,因为form的action属性只接受一个url!

<form method="get" action="/yourservlet"> 
<!-- action only accepts a single url! -->
于 2012-10-12T05:35:52.017 回答