如何將變量從servlet傳遞給jsp? setAttribute
和getAttribute
沒有爲我工作:-(將變量從servlet傳遞給jsp
回答
你可以forwaring請求到JSP之前設置的所有值到響應對象,或者你可以把你的價值觀到在一個會話bean和訪問JSP
感謝花花公子如下所示這些步驟。我做了同樣的事情,它爲我工作。 :-) – Developer 2010-09-25 06:47:34
使用
了request.setAttribute( 「的attributeName」);。
然後
getServletContext()。getRequestDispatcher(「/ file.jsp」)。forward();
然後它將在JSP中被訪問。
作爲一個附註 - 在你的jsp中避免使用java代碼。使用JSTL。
感謝Bozho!我現在不太瞭解JSTL。但是我肯定會學習它。 – Developer 2010-09-25 06:46:47
爲什麼'getServletContext()'而不是'request'? – CodyBugstein 2014-09-02 22:20:18
會失敗時的工作:
您重定向通過
response.sendRedirect("page.jsp")
到新的請求的響應。新創建的請求對象當然不會再包含這些屬性,並且它們將不能在重定向的JSP中訪問。您需要轉發而不是重定向。例如。request.setAttribute("name", "value"); request.getRequestDispatcher("page.jsp").forward(request, response);
您正在訪問了錯誤的方式,或使用錯名字。假設你已經使用該名稱
"name"
設置它,那麼你應該能夠訪問它在轉發 JSP頁面如下:${name}
轉發後,例如,張貼表單被認爲是一個不好的做法,你應該使用真正的重定向(301)。然後你必須通過會話傳遞狀態或獲取參數。 – lukyer 2015-10-12 00:41:27
是完美答案@BalusC – Binay 2016-05-10 03:07:13
@BalusC,你是什麼意思,「你應該能夠在轉發的JSP頁面中訪問它,如下所示:$ {name}」??我試着寫<%out.println($ {name});%>,但它不起作用。但<%out.println(request.getAttribute(「name」));%>做了。 – Pavel 2018-02-07 00:29:19
除了使用屬性從傳遞信息servlet到JSP頁面,也可以通過參數。這隻需通過重定向到指定所討論的JSP頁面的URL並添加普通的參數傳遞URL機制即可完成。
一個例子。servlet代碼的相關部分:
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
// processing the request not shown...
//
// here we decide to send the value "bar" in parameter
// "foo" to the JSP page example.jsp:
response.sendRedirect("example.jsp?foo=bar");
}
和JSP example.jsp
頁的相關部分:
<%
String fooParameter = request.getParameter("foo");
if (fooParameter == null)
{
%>
<p>No parameter foo given to this page.</p>
<%
}
else
{
%>
<p>The value of parameter foo is <%= fooParameter.toString() %>.</p>
<%
}
%>
簡單的方式,我發現,
在servlet的:
您可以設置該值並將其轉發到JSP,如下所示
req.setAttribute("myname",login);
req.getRequestDispatcher("welcome.jsp").forward(req, resp);
在你Welcome.jsp中可以通過
.<%String name = (String)request.getAttribute("myname"); %>
<%= name%>
(或)得到的數值直接ü可以調用
<%= request.getAttribute("myname") %>.
所有答案都有效,但這個看起來很簡單.. – Siva 2016-03-28 12:16:47
您還可以使用RequestDispacher和傳承隨着數據你想要的jsp頁面。
request.setAttribute("MyData", data);
RequestDispatcher rd = request.getRequestDispatcher("page.jsp");
rd.forward(request, response);
這是一個包含字符串變量a的servlet代碼。 a的值是從帶有表單的html頁面獲得的。 然後將該變量設置爲請求對象。然後使用forward
和requestdispatcher
方法將它傳遞給jsp。
String a=req.getParameter("username");
req.setAttribute("name", a);
RequestDispatcher rd=req.getRequestDispatcher("/login.jsp");
rd.forward(req, resp);
在JSP中遵循程序
<%String name=(String)request.getAttribute("name");
out.print("your name"+name);%>
- 1. JSP - 將變量傳遞給servlet
- 2. 如何將JSP變量傳遞給servlet?
- 3. 將變量值從JSP傳遞到Servlet
- 4. jsp servlet將錶行中的變量傳遞給servlet無表格
- 5. 無法將時間戳變量從jsp傳遞給servlet
- 6. 將會話變量從jsp傳遞給servlet過濾器
- 7. 將字符串變量從servlet傳遞給jsp
- 8. 將ArrayList從servlet傳遞給JSP
- 9. 將參數從android傳遞給servlet/jsp
- 10. 將參數從jsp傳遞給servlet
- 11. 將Servlet變量傳遞給JSP JSON頁面
- 12. 將一個servlet變量傳遞給javascript
- 13. 通過JSP將變量傳遞給Java?
- 14. 將JSP變量傳遞給Java函數?
- 15. 將servlet的值傳遞給jsp
- 16. 將數據servlet傳遞給jsp
- 17. 將servlet值傳遞給jsp頁面
- 18. 將JSP加密參數傳遞給servlet
- 19. 將變量從jsp頁面傳遞到servlet
- 20. JSP Interview,如何將數據從Servlet傳遞給JSP?
- 21. 如何將變量從一個servlet傳遞給一個jsp頁面?
- 22. 從jsp傳遞java.util.Map到servlet
- 23. 將數據從Java Servlet傳遞到JSP?
- 24. 將數據從JSP傳遞到Servlet
- 25. 如何將字符串變量從servlet傳遞給jsp並將值存儲在另一個變量中?
- 26. 將Array .jsp傳遞給.jsp
- 27. 如何將變量從jsf託管bean傳遞給jsp頁面
- 28. 將變量從一個jsp頁面傳遞給另一個?
- 29. 如何將多個隱藏參數從jsp傳遞給servlet?
- 30. 將信息從jsp形式傳遞給servlet
一些示例代碼,將有助於 – skaffman 2010-08-31 12:16:52