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

    xiaoxiao2021-03-26  18

    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

    也是对象

    转载请注明原文地址: https://ju.6miu.com/read-658576.html

    最新回复(0)