request.getParameter()与request.setAttribute()的区别

 request.getParameter()与request.setAttribute()的区别

2009-04-23 15:26:04

request.getParameter(),request.setAttribute()区别如下:

(1)request.getParameter()取得是通过容器的实现来取得通过类似post,get等方式传入的数据,request.setAttribute()和getAttribute()只是在web容器内部流转,仅仅是请求处理阶段。

(2)request.getParameter()方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据。request.getParameter()方法返回String类型的数据。

request.setAttribute()和getAttribute()方法传递的数据只会存在于Web容器内部

还有一点就是,HttpServletRequest类有setAttribute()方法,而没有setParameter()方法。

拿一个例子来说一下吧,假如两个WEB页面间为链接关系时,就是说要从1.jsp链接到2.jsp时,被链接的是2.jsp可以通过getParameter()方法来获得请求参数.

假如1.jsp里有

<form name="form1" method="post" action="2.jsp">

请输入用户姓名:<input type="text" name="username">

<input type="submit" name="Submit" value="提交">

</form>的话在2.jsp中通过request.getParameter("username")方法来获得请求参数username:

<% String username=request.getParameter("username"); %>

***

但是如果两个WEB间为转发关系时,转发目的WEB可以用getAttribute()方法来和转发源WEB共享request范围内的数据,也还是说一个例子吧。

有1.jsp和2.jsp

1.jsp希望向2.jsp传递当前的用户名字,如何传递这一数据呢?先在1.jsp中调用如下setAttribute()方法:

<%

String username=request.getParameter("username");

request.setAttribute("username",username);

%>

<jsp:forward page="2.jsp" />

在2.jsp中通过getAttribute()方法获得用户名字:

<% String username=(String)request.getAttribute("username"); %>

时间: 2024-10-23 00:22:38

request.getParameter()与request.setAttribute()的区别的相关文章

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范围取得设置的属性,必须要先

request.getparameter和 request.getattribute的区别

request.getAttribute():是request时设置的变量的值,用request.setAttribute("name","您自己的值");来设置值, request.getParameter():提取发送过来的参数如:本网页 request.getParameter 是用来接受来自get方法或post方法的参数 <form method=post> <form method=get> <a href="1.j

request.getParameter() 和request.getAttribute() 区别

getParameter 是用来接受用post个get方法传递过来的参数的.getAttribute 必须先setAttribute. (1)request.getParameter() 取得是通过容器的实现来取得通过类似post,get等方式传入的数据,request.setAttribute()和getAttribute()只是在web容器内部流转,仅仅是请求处理阶段. (2)request.getParameter() 方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数

request.getAttribute()和request.getParameter()两个方法的区别

request.getAttribute()获得的数据必须曾经有过setAttibute()过: 而request.getParameter()获得是客户端POST或者GET请求时所携带的参数的值 getParameter 是用来接受用post个get方法传递过来的参数的.getAttribute 必须先setAttribute. (1)request.getParameter() 取得是通过容器的实现来取得通过类似post,get等方式传入的数据,request.setAttribute()和

request.getparameter和 request.getattribute的差别

request.getAttribute():是request时设置的变量的值,用request.setAttribute("name","您自己的值");来设置值, request.getParameter():提取发送过来的參数如:本网页 request.getParameter 是用来接受来自get方法或post方法的參数 <form method=post> <form method=get> <a href="1.j

request.getParameter() 、 request.getInputStream()和request.getReader() 使用体会

request.getParameter(). request.getInputStream().request.getReader()这三种方法是有冲突的,因为流只能被读一次.比如:当form表单内容采用 enctype=application/x-www-form-urlencoded编码时,先通过调用request.getParameter() 方法得到参数后,再调用request.getInputStream()或request.getReader()已经得不到流中的内容,因为在调用 r

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

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

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

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

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

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