getAttribute 和 getParameter 的区别
1.getAttribute是取得jsp中 用setAttribute設定的attribute
2.parameter得到的是string;attribute得到的是object
3.request.getParameter()方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据;request.setAttribute()和getAttribute()方法传递的数据只会存在于Web容器内部,在具有转发关系的Web组件之间共享。即request.getAttribute()方法返回request范围内存在的对象,而request.getParameter()方法是获取http提交过来的数据。
JSP中getParameter与getAttribute有何区别?
——说实话,这个问题当初我也困惑很久,我也知道怎么用,可是到底有什么区别,我也不是很清楚,后来找了很多资料才明白。昨天又有一位朋友问我这个问题,想我当初同样也困惑过,于是我就把这个问题贴出来,让同样困惑的朋友解惑。
——getParameter得到的都是String类型的。或者是http://a.jsp?id=123中的123,或者是某个表单提交过去的数据。
——getAttribute则可以是对象。
——getParameter()是获取POST/GET传递的参数值;
[/size][size=large]
——getAttribute()是获取对象容器中的数据值;
——getParameter:用于客户端重定向时,即点击了链接或提交按扭时传值用,即用于在用表单或url重定向传值时接收数据用。
——getAttribute:用于服务器端重定向时,即在sevlet中使用了forward函数,或struts中使用了mapping.findForward。getAttribute只能收到程序用setAttribute传过来的值。
——getParameter()是获取POST/GET传递的参数值;
——getAttribute()是获取SESSION的值;
另外,可以用setAttribute,getAttribute发送接收对象.而getParameter显然只能传字符串。
setAttribute 是应用服务器把这个对象放在该页面所对应的一块内存中去,当你的页面服务器重定向到另一个页面时,应用服务器会把这块内存拷贝另一个页面所对应的内存中。 这样getAttribute就能取得你所设下的值,当然这种方法可以传对象。session也一样,只是对象在内存中的生命周期不一样而已。
getParameter只是应用服务器在分析你送上来的request页面的文本时,取得你设在表单或url重定向时的值。
getParameter 返回的是String, 用于读取提交的表单中的值;
getAttribute 返回的是Object,需进行转换,可用setAttribute设置成任意对象,使用很灵活,可随时用;
分享到:
相关推荐
### getAttribute与getParameter的区别 在Java Web开发中,`...通过以上分析可以看出,`getAttribute` 和 `getParameter` 在Java Web开发中扮演着不同的角色,理解它们的区别对于编写高效、健壮的应用程序至关重要。
### getAttribute 和 getParameter 区别详解 #### 一、概述 在Web开发中,`getAttribute` 和 `getParameter` 是两个非常重要的方法,主要用于获取不同的数据类型和来源。这两个方法虽然相似,但在实际应用场景中...
其中,`getAttribute()` 和 `getParameter()` 是两个非常重要的方法,它们分别用于处理不同的数据类型和场景。本文将详细探讨这两个方法之间的区别,并结合实例进行讲解。 #### 二、`getParameter()` 方法详解 `...
通过上述分析,我们可以清楚地看到`request.getParameter()`与`request.getAttribute()`在功能、用途及使用场景上的区别,这将有助于开发者在实际项目中更加合理地选择和应用这些方法,提高代码的效率和可维护性。
总的来说,`getAttribute()`和`getParameter()`都是处理客户端请求数据的重要工具,但它们的使用场合和数据类型处理上有所区别。理解这些差异对于编写高效且健壮的Web应用程序至关重要。在开发过程中,根据具体需求...
### `request.getParameter()` 和 `session.getAttribute()` 的区别 #### 1. **作用范围** - **`request.getParameter()`**:此方法用于从当前 HTTP 请求中获取参数的值。这些参数通常来源于 HTML 表单或 URL 查询...
request.getParameter() 和 request.getAttribute() 是两个最常用的方法来获取客户端的请求信息,但是它们的用法和作用域却有很大的区别。 request.getParameter() 方法是用来获取客户端通过 HTTP 协议传递的参数,...
根据上述文件信息,造成`request.getParameter()`取值为null的原因是页面元素的id属性和name属性设置不一致。 在HTML中,一个表单元素可以同时拥有id和name属性。id属性用于在同一个页面内唯一标识该元素,便于...
通过`setAttribute`和`getAttribute`方法可以在`ServletContext`中存储和检索数据,实现数据共享的功能。 #### 总结 以上介绍了JSP中的四种会话跟踪方式及其基本使用方法,同时还提到了内部跳转与外部跳转的区别...
在本篇文章中,我们将深入探讨`request.getParameter()`和`request.setAttribute()`以及`request.getAttribute()`的区别,并提供相关示例来帮助理解它们的用法。 **一、request.getParameter() 和 request....
**getAttribute 和 getParameter** 都是Servlet API中的方法,用于从请求中获取数据。getAttribute() 用于获取存储在HttpServletRequest对象中的属性值,这些属性可以在请求处理过程中被多次使用,跨多个方法传递。...
这里的`xxx`和`yyy`就是GET请求的参数名,`王大炮`和`123456`是对应的参数值。在Servlet端,我们可以使用`HttpServletRequest`的`getParameter()`方法来获取这些参数: ```java protected void doGet...
- 与`setAttribute()`和`getAttribute()`不同的是,`getParameter()`只能获取当前请求中的URL参数,不能用于存储和传递其他类型的对象。 #### 四、总结 Attribute在Java Web开发中扮演着极其重要的角色,它不仅...
- **getParameter()与getAttribute()的区别**:`getParameter()`用于获取请求参数,适用于表单数据的获取,而`getAttribute()`则是用来在请求范围内共享对象或数据。 这个实验旨在通过实践操作,让学生深入理解和...
- **代码简洁性**: OGNL表达式的使用避免了大量的`request.getAttribute()`和`myBean.getMyProperty()`之类的语句,使得代码更加简洁易懂。 - **支持运算符**: OGNL支持各种运算符,如加减乘除等,使得表达式具有更...
JSP内置对象session和application的应用 JSP(Java Server Pages)是一种服务器端脚本语言,用于生成动态网页。JSP内置对象是JSP提供的一些预定义对象,通过这些对象,可以访问和操作服务器端的资源。其中,session...
利用它的两个方法setAttribute()和getAttribute(),可以实现参数的传递。 例如,下面的实例实现了把第一个JSP页面的参数传递给第三个页面的功能: 1.jsp whats your name 2.jsp String name=...
包括字符串对象的创建、StringBuffer与StringBuilder的区别、Error与Exception的差异、Java序列化、JVM加载Class文件的机制、ServletAPI中的forward()与redirect()的区别,以及HttpServletRequest中getAttribute()与...
String action request getParameter "action" ; Teacher t new Teacher ; t setUsername request getParameter "username" ; if "register" equals action { t set...
//得到书号和书本对象 int bookid =Integer.parseInt(request.getParameter("id")); Map, Book> books = (Map, Book>)request.getSession().getServletContext().getAttribute("books"); Book book = books....