request的setAttribute方法确实能够多页传值和多页取值的,因为request完成的是服务器跳转,在这期间所有设置的内容会被保存下来。下面的例子包含4个页面,1page.jsp和2page.jsp完成的是页面多次传值,3page.sjp和4page.jsp完成的是页面多次取值,直到页面显示出来,url一直是1page.jsp,说明这是服务器跳转。
1page.jsp
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <% request.setAttribute("name","zhangsan"); %> <body> <jsp:forward page="2page.jsp"/> </body> </html>
2page.jsp
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <jsp:forward page="3page.jsp"/> </body> </html>
3page.jsp
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <%=request.getAttribute("name")%> <jsp:forward page="4page.jsp"/> </body> </html>
4page.jsp
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> </head> <body> <%=request.getAttribute("name")+" in 4page.jsp"%> </body> </html>
相关推荐
在Java Web开发中,我们经常遇到各种运行时错误或编译错误,其中一种较为常见的问题是`request.setAttribute`方法调用时出现红色感叹号提示,并且伴随着HTTP 500错误。这种问题通常是由类型不匹配导致的,比如尝试将...
javascript request.setAttribute()详解 request.setAttribute()怎么用的? JSP1代码 String [] test=new String[2]; test[0]=1; test[1]=2; request.setAttribute(test,test) ; response.sendRedirect(jsp2.jsp); ...
- 当数据需要跨多个请求或会话使用时,应考虑使用`session.setAttribute()`和`session.getAttribute()`,因为它们的生命周期更长,可以覆盖整个会话过程。 - 在使用`request.getAttribute()`时,必须确保先调用过...
request.setAttribute() 方法用来设置服务器端的变量,而 request.getAttribute() 方法用来获取服务器端的变量。 request.setAttribute() 方法可以将变量设置到 request 范围内,例如: request.setAttribute(...
request.setAttribute("toolbar", toolbar); // 条件过滤数据,传送到页面 request.setAttribute("xm", xm); request.setAttribute("rxsj", rxsj); request.setAttribute("yx", yx); request.setAttribute("zy", zy);...
request.setAttribute("ulist",userList); request.getRequestDispatcher("/admin/show.jsp").forward(request,response); } public void logout(HttpServletRequest request, HttpServletResponse response) ...
在本篇文章中,我们将深入探讨`request.getParameter()`和`request.setAttribute()`以及`request.getAttribute()`的区别,并提供相关示例来帮助理解它们的用法。 **一、request.getParameter() 和 request....
在JavaServer Pages (JSP) 开发中,页面间的参数传递是常见的需求,尤其是在构建多页面应用程序时。这里我们将详细探讨几种在JSP中传递参数的方法,并通过示例来理解它们的工作原理。 1. **URL请求参数传递** 这是...
我们可以使用 `request.setAttribute()` 方法将数据设置到 Request 对象中,然后在 JSP 页面中使用 `request.getAttribute()` 方法来获取这些数据。 在下面的示例代码中,我们创建了一个 Servlet 类,使用 `request...
2. **通过session对象传值**:这种方式适合于需要跨多个页面或请求保持的数据。在JSP页面设置session属性后,可以通过`HttpSession`对象在Servlet中获取这些属性。 3. **通过表单提交传值**:当用户填写表单并提交时...
最近在做一个文件下载的功能,这里把做的过程中用... elt.setAttribute('href', url); elt.setAttribute('download', 'file.png'); elt.style.display = 'none'; document.body.appendChild(elt); elt.click(); d
3. 使用Java代码传值:使用Java代码来传递数据,例如:servlet只能接收到session.setAttribute("testSession","Hello session")的内容,而不能接收到request的内容。 总结 getParameter()方法传递的是字符串,一般...
// session.setAttribute("redirectUrl", request.getRequestURL().append("?").append(request.getQueryString()).toString()); String url = request.getParameter("url"); URLEncoder.encode(URLDecoder....
### JSP 页面间通过 Request/Session 传值详解 #### 一、背景介绍 在 Web 开发中,尤其是在 JavaServer Pages (JSP) 技术中,数据在不同页面之间的传递是一项基本且重要的功能。本篇文章将详细介绍如何利用 JSP 的 ...
HttpServletRequest request=ServletActionContext.getRequest(); HttpSession session=request.getSession(); session.setAttribute("bookName", this.bookName); session.setAttribute("bookPrice", this....
request.setAttribute("msg", "路径有误请重试"); request.getRequestDispatcher("/404.jsp").forward(request, response); } } public void addCategory(HttpServletRequest request, ...
request.getSession().setAttribute("name", "value"); ``` #### 小结 以上介绍了几种常用的JSP页面传值方式,包括使用表单、URL重写、JavaScript动态改变表单行为、JSP内置对象和标签库以及Cookie和Session。...
request.setAttribute("pageControlNumberType1", pageControl.pageControl()); request.setAttribute("pageControlNumberType2", pageControl2.pageControl()); request.setAttribute("pageControlNumberType3", ...
request.setAttribute("pageControlNumberType1", pageControl.pageControl()); request.setAttribute("pageControlNumberType2", pageControl2.pageControl()); request.setAttribute("pageControlNumberType...