我知道我可以使用getParameter()来传递客户端对象,但我想知道如何使用服务器端对象来传递服务器端对象,就像我使用getParameter 。我已经看到了getAttribute,但是是否需要在第一个JSP页面上使用setAttribute,然后在第二个页面上使用getAttribute。任何帮助将大大appriciated。将服务器端对象从一个JSP页面传递到另一个页面
1
A
回答
1
- 如果您正在使用
forward
(jsp:foprward
或RequestDispatcher
)从一个网页到另一个,然后使用request.setAttribute(..)
和request.getAttribute()
,因为你是相同的请求 - 内如果使用
redirect
(通过response.sendRedirect()
),然后使用request.getSession().setAttribute(..)
和request.getSession().getAttribute()
2
您通常不希望将对象从JSP传递到JSP。您需要将对象放在的范围内,(其他)JSP可以访问。您通常也不想在JSP文件中编写原始Java代码来实现此目的。使用真正的Java类与普通香草Expression Language结合使用。
下面是其中JSP反过来可以访问使用EL请求范围存储信息的一个(半伪)的例子。首先在servlet:
protected void doGet(request, response) {
request.setAttribute("message", "Blah yadda blah.");
request.getRequestDispatcher("page.jsp").forward(request.response);
}
现在JSP:
<p>Message was: ${message}</p>
如果你调用这个servlet通过如http://example.com/context/servlet
,那么您将看到消息显示在输出中。
如果你想保持信息的时间长一点左右,如登录User
,那么你可以使用会话此范围:
protected void doPost(request, response) {
String username = request.getParameter("username");
String password = request.getParameter("password");
User user = userDAO.find(username, password);
if (user != null) {
request.getSession().setAttribute("user", user);
response.sendRedirect("home");
} else {
request.setAttribute("message", "Unknown user, please try again.");
request.getRequestDispatcher("login.jsp").forward(request.response);
}
}
的User
对象现在是在所有请求访问同一个会话,直到您明确从会话(注销)将其删除内部或直到会话得到失效(超时)。它可以在同一个会话中请求的任何JSP页面使用JSP例如:
<p>You're logged in as ${user.name}</p>
备选地/另外地,可以使用JSTL的<c:set>
标记来设置的属性/对象在JSP内部在一定的范围文件。但你往往不需要这个这个特定目的(“传递对象到另一页”)。
相关问题
- 1. 如何将一个bean从一个JSP页面传递到另一个页面?
- 2. 在wp8中将对象从一个页面传递到另一个页面
- 3. 将值从一个页面传递到另一个页面
- 4. 将值从一个HTML页面传递到另一个页面
- 5. 将var从一个页面传递到另一个页面
- 6. 将一个php变量从一个页面传递到另一个php页面
- 7. 如何将日期标识从一个jsp传递到另一个jsp页面
- 8. 将多个值从一个页面传递到另一个页面
- 9. 将数据从一个jsp页面发送到另一个jsp页面
- 10. 如何将信息从一个jsp页面传递到其他jsp页面
- 11. ICEfaces:如何将参数从一个页面传递到另一个页面
- 12. 使用ajax将值从一个页面传递到另一个页面
- 13. 如何在jQuery中将值从一个页面传递到另一个页面
- 14. 将数组从一个页面传递到另一个页面php
- 15. jQuery手机将参数从一个页面传递到另一个页面
- 16. 将数据从一个页面传递到另一个页面.net
- 17. 如何使用jQuery将值从一个页面传递到另一个页面?
- 18. 将参数从一个HTML页面传递到另一个页面
- 19. 路由时将值从一个页面传递到另一个页面
- 20. 使用javascript将值从一个页面传递到另一个页面
- 21. 将数据从一个ASP.NET页面传递到另一个页面
- 22. 使用PHP将变量从一个页面传递到另一个页面
- 23. 将复选框状态从一个页面传递到另一个页面
- 24. 如何将值从一个页面传递到另一个页面? (angular2)
- 25. 将结果值从一个PHP页面传递到另一个页面
- 26. 将URL列表从一个页面传递到另一个页面
- 27. 如何将一个对象从一个xaml页面传递给另一个?
- 28. 将会话变量从一个页面传递到另一个
- 29. 将值从一个页面传递到另一个
- 30. Vue.js将数组从一个页面传递到另一个