我正在 Eclipse 中创建一个动态 Web 项目,但无法弄清楚如何将用户的请求(通过按钮单击)发送到将执行某些操作(包括数据库查找)的 servlet,然后用格式化的结果填充网页。我创建了所有数据库查找函数。最好的方法是什么?我真的只需要一个字符串被传递回servlet,这将是我希望作为ArrayList返回的书籍的"类别"。一些来源似乎表明 jsp 页面甚至不应该用于将信息中继到 servlet,所以我很困惑。
有几种方法可以做到这一点:
-
表格提交
<form action="/myServlet" method="post"> <input type="text" name="category" id="category"/> <input type="submit" value="submit" id="btnSubmit"/>
然后在你的servlet代码(doPost())中:
String category = request.getParameter("category");
使用 ajax (jQuery ajax 要干净得多)
$.ajax({ method: "POST", url: "/myServlet", data: { category: $("#category").val()} //post category field }).done(function( msg ) { alert( msg ); //alert html returned from servlet });
JQuery Ajax (get)
$("btnSubmit").click(function(event){ event.preventDefault(); $.get("/myServlet", function(data, status){ alert("Data: " + data + "nStatus: " + status); }); });
你可以发送你的"category"参数,把它写在URL中:Servlet/?category=scifi and use request.getParameter("category");在 doGet 方法中。