![](/img/trans.png)
[英]how to pass values from jsp to servlet through <a href> using jstl
[英]pass values from jsp to servlet using <a href>
我有JSP頁面-
<html>
<head>
</head>
<body>
<%
String valueToPass = "Hello" ;
%>
<a href="goToServlet...">Go to servlet</a>
</body>
</html>
和servlet-
@WebServlet(name="/servlet123",
urlPatterns={"/servlet123"})
public class servlet123 extends HttpServlet {
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
}
public void foo() {
}
}
我應該在<a href="goToServlet...">Go to servlet</a>
中寫什么,以便將值(例如valueToPass
或可能將值添加為)添加到servlet123
?
是否可以使用JSP中的鏈接調用servlet123
的特定方法(如foo()
)?
編輯:
如何在URL中調用servlet? 我的頁面層次結構如下所示-
WebContent
|-- JSPtest
| |-- callServletFromLink.jsp
|-- WEB-INF
: :
我想在servlet123
> control文件夾中調用servlet123
。
我嘗試了<a href="servlet123">Go to servlet</a>
但是當我按鏈接時它沒有找到servlet。
第二次編輯:
我嘗試<a href="http://localhost:8080/MyProjectName/servlet123">Go to servlet</a>
並成功了。
如果要使用URL將參數發送到servlet,則應采用這種方式
<a href="goToServlet?param1=value1¶m2=value2">Go to servlet</a>
然后檢索將在請求中可用的值。
關於第二個問題。 我會說不。 您可以在URL中添加參數,例如
<a href="goToServlet?method=methodName¶m1=value1">Go to servlet</a>
並使用該信息來調用特定方法。
順便說一句,如果您使用Struts之類的框架,這將更加容易,因為在Struts中,您可以將URL綁定到特定的Action方法(比如說“ servlet”)
編輯 :
您已通過以下方式定義了servlet:
@WebServlet("/servlet123")
您,您的servlet將在/ servlet123上可用。 請參閱doc 。
我已經測試過您的代碼,並且可以正常工作:
@WebServlet(name = "/servlet123", urlPatterns = { "/servlet123" })
public class Servlet123 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
out.write("<h2>Hello Friends! Welcome to the world of servlet annotation </h2>");
out.write("<br/>");
out.close();
}
}
然后,我在http://localhost:8080/myApp/servlet123
調用了servlet(如果使用http://localhost:8080/myApp/servlet123
其作為應用程序上下文)。
<a href="url">urltitle</a>
允許您定義一個URL。 從這里調用Servlet與從瀏覽器調用Servlet一樣好,只需提供您在瀏覽器中提供的url,就像在http://mysite.com?param1=val1¶m2=val2等中調用servlet一樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.