A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 秦驰 黑马帝   /  2011-7-25 15:59  /  2966 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

5 个回复

倒序浏览
黑马网友  发表于 2011-7-25 20:17:41
沙发
其实就等于是在问Attribute和Parameter的区别。
Attribute是相对容器对象来说的,是request,response,servletContext等容器对象的固有属性。
Parameter是相对业务功能来说的,比如做一个登陆的表单,需要username参数,password参数等等,都是parameter.
个人理解,有误请纠正

评分

参与人数 1技术分 +2 收起 理由
admin + 2 还行!

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-7-25 20:23:25
藤椅
request.getAttribute()和request.getParameter()的区别是request.getAttribute()获得的是对象类型,而request.getParameter()获得的是字符串类型

getParameter()是获取POST/GET传递的参数值;   
getAttribute()是获取对象容器中的数据值

评分

参与人数 1技术分 +2 收起 理由
admin + 2 答到边了就有分!

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-7-25 20:36:05
板凳
request.getParameter   
  是用来接受来自get方法或post方法的参数   
  <form   method=post>   
  <form   method=get>   
  <a   href="1.jsp?id=1">ok</a>   
  只能接受java.lang.String   
  也就是说String   hotel_id   =   request.getParameter("hotel_id");   
  request.getAttribute   
  是用来接受来自servlet的变量或Action(其实Action就是特殊的Servlet)   
  在Action中,request.setAttribute("ret",ret);   
  只能接受java.lang.Object   
  也就是说List   ret   =   (List)request.getAttribute("ret");  

一个是变量类型,一个对象类型

评分

参与人数 1技术分 +2 收起 理由
admin + 2

查看全部评分

回复 使用道具 举报
黑马网友  发表于 2011-7-26 23:26:39
报纸
个人认为:
request.getAttribute():是request时设置的变量的值,用request.setAttribute( "name ", "您自己的值 ");来设置值,

request.getParameter():提取发送过来的参数
回复 使用道具 举报
黑马网友  发表于 2011-7-27 00:22:47
地板
他们的用法基本是一致的,都是在括号里写上要获得的参数的名称,
一般可以用
getParameter()得到页面参数以及字符串。
getAttribute()可以得到对象。
getParameter可以得到页面传来的参数如,举个例子,当用户点击一篇文章常看详情时,我们通常会将文章id置于地址后面当作参数传递(article,jsp?id=123之类的。),此时我们要获得文章id123, 则request.getParameter("id")就可以了
getAttribute()常用于servlet获取参数.

评分

参与人数 1技术分 +2 收起 理由
admin + 2

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马