通过单击两个不同的按钮来从同一数据库中获取数据,从而调用相同的servlet

时间:2011-01-17 05:15:20

标签: java servlets

我创建了一个JSP页面,我在其中创建了一个搜索表单,用户可以在搜索按钮下方的同一页面中查看学生的某些特定记录。搜索如下:

"select col1, col2 from table1 where regn_no='"+regn_no+"'";

在显示两列(col1,col2)后,我在同一个jsp页面中有另一个按钮,可以查看详细信息,以查看基于regn_no的特定学生的详细信息。搜索按钮工作正常,但视图详细信息按钮没有。我不知道如何调用相同的servlet。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

按钮的名称=值对也作为HTTP请求参数发送。假设你已经

<input type="submit" name="search" value="Search">

<input type="submit" name="view" value="View">

然后您可以按如下方式区分servlet中按下的按钮:

if (request.getParameter("search") != null) {
    // Search button pressed.
} else if (request.getParameter("view") != null) {
    // View button pressed.
}

另见:


与此问题无关,您在那里有一个SQL injection riskUse PreparedStatement

答案 1 :(得分:0)

假设两个按钮的形式不同。这两种形式都可以将数据POST到同一个servlet。但是你应该做一个标记告诉servlet点击了哪个按钮。您可以使用隐藏的输入来执行此操作。在搜索表单中说出<input type="hidden" value="search"/>,在视图表单中说出<input type="hidden" value="viewdetail"/>。当然,您可以通过按钮name属性来区分哪个按钮被发布到servlet。