我想在JSP按钮上调用一个servlet控制器。我不能使用表单提交按钮,因为我有其他操作。除了AJAX调用之外还有其他方法可以调用servlet吗?我想知道,有没有像下面代码
的选项<a href="goToServlet?param1=value1¶m2=value2">Go to servlet</a>
答案 0 :(得分:0)
是的,
Servlet的 doGet方法映射到特定的URL,可以使用URL直接访问。使用doPost 方法无法实现。
例如:
如果我有一个名为TestServlet
的servlet,它有一个url-pattern testme
,
然后我可以用这样的achor标签访问这个servlet:
<a href="/testme?param1=cool¶m2=nice">Go to servlet</a>
<强>的web.xml 强>
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>servlets.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/testme</url-pattern>
</servlet-mapping>
TestServlet doGet方法
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String param1 = request.getParameter("param1");
String param2 = request.getParameter("param2");
RequestDispatcher rd=request.getRequestDispatcher("anotherPage.jsp");
rd.forward(request,response);
}
}