getAttribute()方法与getParameter()方法的区别

getAttribute()

方法


request.getAttribute()

request.getParameter()

的区别

?

 

HttpServletRequest

类既有

getAttribute()

方法,

也由

getParameter()

方法,

这两个方法有以下区

别:

 

 

1

HttpServletRequest

类有

setAttribute()

方法,而没有

setParameter()

方法

 

 

2

当两个

Web

组件之间为链接关系时,

被链接的组件通过

getParameter()

方法来获得请求

参数,

例如假定

welcome.jsp

authenticate.jsp

之间为链接关系,

welcome.jsp

中有以下代码:

 

 

<a href="authenticate.jsp?username=weiqin">authenticate.jsp </a> 

 

或者:

 

 

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

    

请输入用户姓名:

<input type="text" name="username"> 

    <input type="submit" name="Submit" value="

提交

"> 

</form> 

 

authenticate.jsp

中通过

request.getParameter("username")

方法来获得请求参数

username: 

 

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

 

3

)当两个

Web

组件之间为转发关系时,转发目标组件通过

getAttribute()

方法来和转发源

组件共享

request

范围内的数据。假定

authenticate.jsp

hello.jsp

之间为转发关系。

authenticate.jsp

hello.jsp

数据

authenticate.jsp

中调用

setAttribute()

方法:

 

 

<% 

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

request.setAttribute("username"

username); 

%> 

 

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

 

hello.jsp

中通过

getAttribute()

方法获得用户名字

 

<% String username=(String)request.getAttribute("usern

getAttribute()方法与get

ame"); %> 

Hello: <%=username %> 

 

 

 

从更深的层次考虑,

request.getParameter()

方法传递的数据,

会从

Web

客户端传到

Web

服务

器端,代表

HTTP

请求数据。

request.getParameter()

方法返回

String

类型的数据。

 

 

request.setAttribute()

getAttribute()

方法传递的数据只会存在于

Web

容器内部,在具有转发

关系的

Web

组件之间共享。这两个方法能够设置

Object

类型的共享数据。

 

 

 request.getAttribute()

方法返回

request

范围内存在的对象,而

request.getParameter()

方法是获

http

提交过来的数据。

  

  

 

  

  

 

 

一般是

string

型用

request.getParameter 

对象的引用用

request.getAttribute 

当然啦,

String

也是对象

 

HttpServletRequest

类既有

getAttribute()

方法,

也由

getParameter()

方法,

这两个方法有以下区

别:

 

 

1

HttpServletRequest

类有

setAttribute()

方法,而没有

setParameter()

方法

 

 

2

当两个

Web

组件之间为链接关系时,

被链接的组件通过

getParameter()

方法来获得请求

参数,

例如假定

welcome.jsp

authenticate.jsp

之间为链接关系,

welcome.jsp

中有以下代码:

 

 

<a href="authenticate.jsp?username=weiqin">authenticate.jsp </a> 

 

或者:

 

 

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

    

请输入用户姓名:

<input type="text" name="username"> 

    <input type="submit" name="Submit" value="

提交

"> 

</form> 

 

authenticate.jsp

中通过

request.getParameter("username")

方法来获得请求参数

username: 

 

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

 

3

)当两个

Web

组件之间为转发关系时,转发目标组件通过

getAttribute()

方法来和转发源

组件共享

request

范围内的数据。假定

authenticate.jsp

hello.jsp

之间为转发关系。

authenticate.jsp

hello.jsp

数据

authenticate.jsp

中调用

setAttribute()

方法:

 

 

<% 

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

request.setAttribute("username"

username); 

%> 

 

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

 

hello.jsp

中通过

getAttribute()

方法获得用户名字

 

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

Hello: <%=username %> 

 

 

 

从更深的层次考虑,

request.getParameter()

方法传递的数据,

会从

Web

客户端传到

Web

服务

器端,代表

HTTP

请求数据。

request.getParameter()

方法返回

String

类型的数据。

 

 

request.setAttribute()

getAttribute()

方法传递的数据只会存在于

Web

容器内部,在具有转发

关系的

Web

组件之间共享。这两个方法能够设置

Object

类型的共享数据。

 

 

 request.getAttribute()

方法返回

request

范围内存在的对象,而

request.getParameter()

方法是获

http

提交过来的数据。

  

  

 

  

  

 

 

一般是

string

型用

request.getParameter 

对象的引用用

request.getAttribute 

当然啦,

String

也是对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值