黑马程序员技术交流社区

标题: request.getAttribute() 和 request.getParameter() 区别? [打印本页]

作者: 秦驰    时间: 2011-7-25 15:59
标题: request.getAttribute() 和 request.getParameter() 区别?
request.getAttribute() 和 request.getParameter() 区别?
作者: 匿名    时间: 2011-7-25 20:17
其实就等于是在问Attribute和Parameter的区别。
Attribute是相对容器对象来说的,是request,response,servletContext等容器对象的固有属性。
Parameter是相对业务功能来说的,比如做一个登陆的表单,需要username参数,password参数等等,都是parameter.
个人理解,有误请纠正
作者: 匿名    时间: 2011-7-25 20:23
request.getAttribute()和request.getParameter()的区别是request.getAttribute()获得的是对象类型,而request.getParameter()获得的是字符串类型

getParameter()是获取POST/GET传递的参数值;   
getAttribute()是获取对象容器中的数据值
作者: 匿名    时间: 2011-7-25 20:36
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");  

一个是变量类型,一个对象类型
作者: 匿名    时间: 2011-7-26 23:26
个人认为:
request.getAttribute():是request时设置的变量的值,用request.setAttribute( "name ", "您自己的值 ");来设置值,

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




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2