getAttribute 与getParmeter 区别

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传递的参数值;

  • 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设置成任意对象,使用很灵活,可随时用;

时间: 2024-12-30 04:52:06

getAttribute 与getParmeter 区别的相关文章

Request的getParameter和getAttribute方法的区别

下面整理一下getParameter和getAttribute的区别和各自的使用范围.      (1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法      (2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,例如假定welcome.jsp和authenticate.jsp之间为链接关系,welcome.jsp中有以下代码:      <a  href="authent

getParameter 与 getAttribute的区别

request.getAttribute()   :是request时设置的变量的值,用request.setAttribute("name","您自己的值");来设置值,   request.getParameter() :提取发送过来的参数如:本网页http://community.csdn.net/Expert/topic/4633/4633804.xml?temp=.3488123  request.getParameter("temp"

Java程序员面试题收集(3)

面试中被问到过的题目: 1.<%@ include=""/>和<jsp:include page="" flush="true"/> 2.知道的GOF 模式,说明 3.自己的长期规划是什么,近期规划是什么? 4.override和overload 5.final关键字 6.系统如何分层,前台,逻辑,数据访问.你的职责,代码如何保证质量的 7.getAttribute 和getParameter 区别 8.forward和r

Java web基础总结五之—— HttpServletRequest与HttpServletResponse

Java web基础总结五之-- HttpServletRequest与HttpServletResponse 在前面总结过,每当客户端给Web服务器发送一个http请求,web服务器就会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象就代表请求和响应,所以我们可以通过request对象获得请求相关的数据和操作.通过response对象进行对响应相关的数据封装和一些其他的操作. 一.HttpServletRequ

getAttribute()与getParameter的区别

当两个Web组件之间为转发关系时,转发源会将要共享 request范围内的数据先用setAttribute将数据放入到HttpServletRequest对象中,然后转发目标通过 getAttribute方法来取得要共享的数据.而MVC中用的就是Web组件之间的转发. 下面整理一下getParameter和getAttribute的区别和各自的使用范围. (1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法 (2)getParam

JSP中getParameter和getAttribute区别

(1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法 (2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数, (3)当两个Web组件之间为转发关系时,转发目标组件通过getAttribute()方法来和转发源组件共享request范围内的数据. 一般通过表单和链接传递的参数使用getParameter 通过request.setAttribute("name","

【转】HttpServletRequest.getParameter() &amp;HttpServletRequest.getAttribute() 区别

Ref: HttpServletRequest的getParameter和getAttribute方法有什么区别 具体如下几点: (1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法 (2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数. 例如假定welcome.jsp和authenticate.jsp之间为链接关系,welcome.jsp中有以下代码: <a href="a

基于request.getAttribute与request.getParameter的区别详解

HttpServletRequest类既有getAttribute()方法,也有getParameter()方法,这两个方法有以下区别:1.HttpServletRequest类有setAttribute()方法,而没有setParameter()方法:2.当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数: 例如,假定welcome.jsp和authenticate.jsp之间为链接关系,welcome.jsp中有以下代码:代码如下: <a hre

request.setAttribute()、session.setAttribute()和request.getParameter()、request.getAttribute()的联系与区别

1.session.setAttribute()和session.getAttribute()配对使用,作用域是整个会话期间,在所有的页面都使用这些数据的时候使用. 2.request.setAttribute()和request.getAttribute()配对使用,作用域是请求和被请求页面之间. request.setAttribute()是只在此action的下一个forward需要使用的时候使用:request.getAttribute()表示从request范围取得设置的属性,必须要先