getAttribute表示从request范围取得设置的属性,必须要先setAttribute设置属性,才能通过getAttribute来取得,设置与取得的为Object对象类型

getParameter表示接收参数,参数为页面提交的参数,包括:表单提交的参数、URL重写(就是xxx?id=1中的id)传的参数等,因此这个并没有设置参数的方法(没有setParameter),而且接收参数返回的不是Object,而是String类型

HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别:

(1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法

(2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,例如假定welcome.jsp和authenticate.jsp之间为链接关系,welcome.jsp中有以下代码:

authenticate.jsp

或者:

请输入用户姓名:

在authenticate.jsp中通过request.getParameter("username")方法来获得请求参数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);

%>

在hello.jsp中通过getAttribute()方法获得用户名字:

Hello:

从更深的层次考虑,request.getParameter()方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据。request.getParameter()方法返回String类型的数据。

request.setAttribute()和getAttribute()方法传递的数据只会存在于Web容器内部,在具有转发关系的Web组件之间共享。这两个方法能够设置Object类型的共享数据。

request.getParameter()取得是通过容器的实现来取得通过类似post,get等方式传入的数据,,  request.setAttribute()和getAttribute()只是在web容器内部流转,仅仅是请求处理阶段,这个的确是正解.

getAttribute是返回对象,getParameter返回字符串

request.getAttribute()方法返回request范围内存在的对象,而request.getParameter()方法是获取http提交过来的数据。

getparameter java_java中getAttribute和getParameter的区别相关推荐

  1. getparameter java_java中getAttribute与getParameter方法的区别

    知识点1:getAttribute表示从request范围取得设置的属性,必须要先setAttribute设置属性,才能通过getAttribute来取得,设置与取得的为object对象类型 例:re ...

  2. 【图示,简单明了】HttpServlet中getAttribute和getParameter的区别——【javaweb系列学习笔记】

    在写教材项目时,发现好多好多函数我都不认得, 既然不认得,机械的打上去又有什么用呢? getAttribute和getParameter就是一例, 在网上陆陆续续的看了很多讲解, 以下是我的个人总结: ...

  3. HttpServletRequest中getAttribute()和getParameter()的区别

    一.数据据来源不同 HttpServletRequest类有setAttribute()方法,而 没有setParameter()方法 get/setParameter是在对你的页面中的表单元素进行操 ...

  4. equalwith java_java中==与equal()方法的区别

    java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型.byte,short,char,int,long,float,double,boolean 他们之间的比较,应用双等号(==), ...

  5. 堆和栈区别 java_JAVA中堆和栈的区别

    在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配 ...

  6. JSPServlet中request.getParameter() 和request.getAttribute() 区别

    一.request.getParameter() 和request.getAttribute() 区别 (1)request.getParameter()取得是通过容器的实现来取得通过类似post,g ...

  7. getAttribute与getParameter区别

    当两个Web组件之间为转发关系时,转发源会将要共享 request范围内的数据先用setAttribute将数据放入到HttpServletRequest对象中,然后转发目标通过 getAttribu ...

  8. request.getParameter和request.getAttribute之间的区别

    HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别: (1)HttpServletRequest类有setAttri ...

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

    request.getParameter() 和request.getAttribute() 区别 getParameter 是用来接受用post个get方法传递过来的参数的. getAttribut ...

最新文章

  1. umi3 如何管理model_django admin 管理工具
  2. 【Android 逆向】类加载器 ClassLoader ( Android 的八种类加载器 | ClassLoader | BaseDexClassLoader | DexClassLoader )
  3. Sublime Text 快捷键
  4. [IE编程] WebBrowser控件的多页面浏览(Tabbed Browsing)开发接口
  5. 通过反射获取带参构造方法并使用
  6. java中closeable_java的Closeable接口和Cloneable接口
  7. Magicodes.IE 3.0重磅设计畅谈
  8. 找出性能消耗是第一步,如何解决问题才是关键
  9. Python打包exe后报错:Failed to execute script xxxx问题的解决办法
  10. 配置linux定时任务没跑,Linux配置定时任务
  11. java 注释添加引用_java – 如何引用注释处理中的方法的实现?
  12. Javascript数组函数库
  13. 系统学习深度学习(四十三)--GAN简单了解
  14. linux 锐捷客户端 脚本,常熟理工学院锐捷客户端 for Linux
  15. 小米路由器 charles无法抓包
  16. 小程序列表倒计时使用wxs实现
  17. mac删除默认ABC输入法,mac删除自带ABC输入法
  18. 如何查计算机的开机启动程序,Win7系统电脑如何查看开机启动项?
  19. 企业微信如何实现PC端扫码登录第三方网站
  20. OpenCV3学习(9.4)轮廓矩及其匹配(Moments 、HuMoments、matchShape函数)

热门文章

  1. XML和SQL的互相操作
  2. Unity添加程序集引用
  3. php互助是什么意思,PHP都能够与那些编程语言一起互助干大事,哈哈,你一定没有想全吧...
  4. 自媒体 文章 采集 采集文章媒体怎么做
  5. 跨域问题的复现与整理
  6. 用一张思维导图去全面学习通信网里的各种技术
  7. 电商移动端页面模板(基于html5+css,包括主页,商品详情,转账,付款,购物车等页面)
  8. 【Linux】【gedit】gedit如何保存退出?
  9. 谁不知道华为云CDN加速服务,我都会心疼好久
  10. windows下对拍