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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mingY_life/article/details/48527205

request.getParameter()request.setAttribute()都可以在页面上接收其他页面上的不同,那么两者之间有什么不同吗?下面将通过例子为大家介绍:

先看两段代码:

1、  request.getParameter()使用示例

本示例存在两个页面,1.jsp2.jsp

1.jsp源码:本页面通过form表单提交,与2.jsp页面为链接关系

<body>

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

用户名:<inputtype="text" name="user_name" >

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

</form>

</body>

2.jsp源码:本页面通过request.getParameter获取1.jsp页面传过来的值,返回类型是String

<body>

         用户名:<%=request.getParameter("user_name")  %>

</body>

2、  request.setAttribute()使用示例

本页面存在两个页面,3.jsp4.jsp

3.jsp源码:通过request.setAttribute设置要传的值,与4.jsp是转发关系。

<body>

<%

   String username="aaaaa";

  request.setAttribute("username",username);

 %>

  <!-- 数据的转发 -->

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

</body>

4.jsp源码:通过request.getAttribute获取设置好的参数,返回类型为object

<body>

<%

       Stringstr=(String)request.getAttribute("username");

        out.print(str);

%>

</body>

 

那它们究竟有什么不同呢?

方法

返回

对象

数据来源方式

页面

关系

数据

传送方式

备注

request.getParameter

String

通过urlform传送

链接

Web客户端

传到Web服务器端

最大的区别是:数据传输是否通过服务器。

getAttribute

Object

request.setAttribute设置

转发

web容器内部流转

 


猜你喜欢

转载自blog.csdn.net/mingY_life/article/details/48527205