文档章节

HttpServletRequest.getParameter(String)和getAttribu

Oscarfff
 Oscarfff
发布于 2016/02/16 14:20
字数 370
阅读 49
收藏 0

getParameter(String)和getAttribute()这两个方法都是从request对象中获得参数的方法。但实际上他们之间有着本质的区别。

 

1. getParameter()是指客户端和server端之间的数据传递。我们在从浏览器端发出一个请求到server端时(无论是GET和POST方式),所有的参数都是被包装成了String的形式之后才被传递到server端的。所以,我们在server端的代码中就可以通过request.getPapameter(String)的方式来取得。

 

2. getAttribute()一向是和setAttribute()一起使用的,只有先用setAttribute()设置之后,才能够通过getAttribute()来获得值,它们传递的是Object类型的数据。而且必须在同一个request对象中使用才有效。

何谓同一个request呢?例如,在同一个servelet中,同一个Action中(Struts),同一个JSP中等等;或者是同一个request被forward了多次,那么每一个处理这个request对象的web组件都是使用的同一个request对象;或者include的方式也是一样的。

 

从以上分析,这两者之间的区别就很明确了。getParameter()是在数据从客户端到server端之后才有效的,而getAttribute()则是server端内部的事情,只有在server端调用了setAttribute()之后,并且没有redirect,没有到客户端之前,getAttribute()才有效。

 

同理,getParameterNames()和getParameterValues(String)跟getParameter(String)是一样的道理。


本文转载自:http://blog.csdn.net/superbeck/article/details/4501301

共有 人打赏支持
Oscarfff
粉丝 72
博文 815
码字总数 96913
作品 0
崇明
后端工程师
spring表单控制器SimpleFormController

如果每次传入参数都使用HttpServletRequest获取页面元素的值,假如要获取的页面元素值很少时,可以这样做,如果页面元素很多,就要使用很多的HttpServletRequest.getParameter(),显得很繁琐...

五大三粗
2015/11/23
103
4
Javascript端加密java服务端解密

Javascript端加密java服务端解密 通常我们会通过htts来保证传输安全,但如果我们不用https,如何通过javascript来保证浏览器端发送的参数进行加密,并且通过RSA算法来处理。 这里我们可以利用...

linugb118
2014/05/09
0
0
Jfinal study note

1、extends JFinalConfig 实现 configConstant(Constants me) : 开发模式常量 devMode 的配置,默认视 图类型 ViewType 的配置, me.setDevMode(true); me.setViewType(ViewType.JSP); 2、c......

haojiao
2014/03/11
0
0
getParameter 与 getAttribute的区别

HttpServletRequest.getParameter("modelName"); 能取到想要的modelObject吗?显然是不能的,原因:当两个Web组件之间为转发关系时,转发源会将要共享 request范围内的数据先用setAttribute将...

follitude
2015/12/10
87
0
Ajax专题:异步交互局部刷新初步

从一个用户名校验的例子来认识Ajax的基础应用 首先创建html事件触发端的代码 <!--ajax方式下不需要使用表单来进行数据提交,因此不用写表单标签--> <!--ajax方式不需要name属性,需要一个id的...

MiniBu
2014/06/26
0
1

没有更多内容

加载失败,请刷新页面

加载更多

Java动态代理之InvocationHandler最简单的入门教程

网上关于Java的动态代理,Proxy和InvocationHandler这些概念有讲解得非常高深的文章。其实这些概念没有那么复杂。现在咱们通过一个最简单的例子认识什么是InvocationHandler。值得一提的是,...

JerryWang_SAP
27分钟前
0
0
oracle 在 MyBatis 中使用 like

两种使用方法 使用oracle自带 || 拼凑的方式 <if test="userName!=null and userName!=''"> AND u.USER_NAME like '%' || #{userName} || '%' </if> 使用MyBatis的$符号的方式 <if test="us......

karma123
32分钟前
1
0
带接口的webservice方式发布

package cn.it.ws.e;import javax.jws.WebService;/** * 面向接口的webservice发布方式 * @author Administrator * */@WebServicepublic interface JobService {publi...

江戸川
48分钟前
2
0
day122-20181020-英语流利阅读-待学习

蜘蛛侠新片《毒液》来袭!导演灵感来自哪? Roxy 2018-10-20 1.今日导读 你还记得漫威宇宙中飞檐走壁的蜘蛛侠小可爱吗?在刚过去的国庆黄金周里,索尼影业发行的漫威超级英雄蜘蛛侠系列大片《...

飞鱼说编程
58分钟前
4
0
美团点评Docker容器管理平台

美团点评容器平台简介 本文介绍美团点评的Docker容器集群管理平台(以下简称“容器平台”)。该平台始于2015年,是基于美团云的基础架构和组件而开发的Docker容器集群管理平台。目前该平台为...

Skqing
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部