问题1:慕课里面的例子是Cookie记住最近的一个用户信息,那么/* 如何保存多个用户名呢,如腾讯qq */?

http://www.imooc.com/qadetail/102362?t=194141#id_194141这里面的问题是  选择框values到底返回的是什么

一、 简单的对比

request.getParameter用的比较多,相对熟悉

request.getParameterValues(String   name)是获得如checkbox类(名字相同,但值有多个)的数据。   接收数组变量 ,如checkobx类型     
request.getParameter(String   name)是获得相应名的数据,如果有重复的名,则返回第一个的值 . 接收一般变量 ,如text类型

例:

1. 三个名字相同的text标签

<input type="text" name="test" value="1" /> 
<input type="text" name="test" value="2" /> 
<input type="text" name="test" value="3" />

request.getParameterValues("test")   ----------------- [1, 2, 3]

request.getParameter("test")             ------------------ 1

${paramValues.test}

${param.test}

2. checkbox

<input type="checkbox" name="habit" value="read">看书

<input type="checkbox" name="habit" value="movie">电影

<input type="checkbox" name="habit" value="game">游戏

request.getParameterValues("habit")

二、与此相关的话题------隐含对象

1. JSP隐含对象(Implicit Object)

所谓隐含对象,是指当编写jsp网页时,不必做任何声明就可以直接使用的对象。 JSP2.0定义了九个隐含对象

request response pageContext session application out conifg page exception

这里只提一下request 和 response 两个对象

request 对象表示客户端请求的内容,比如我们从request中取得了用户输入的内容,实现了javax.servlet.http.HttpServletRequest接口

response对象表示响应客户端的结果。

上面我们使用了request的两个方法getParameter 和 getParameterValues,其实request还有其他几个比较重要的方法,这里只涉及几个获取请求参数的方法

String getParameter(String name)                     取得name的参数值

String[] getParameterValues(String name)        取得所有name的参数值

Enumeration getParameterNames()                  取得所有的参数名称

Map<String, String[]> getParameterMap()        取得request的所有参数的一个映射

//

Returns a Java.util.Map of the parameters of this request. Request parameters are extra information sent with the request. For HTTP servlets, parameters are contained in the query string or posted form data. 
Returns: 
an immutable java.util.Map containing parameter names as keys and parameter values as map values. The keys in the parameter map are of type String. The values in the parameter map are of type String array. 
//

response等其他几个隐含对象也有非常重要的身份,有机会专门整理一下,宣扬一下它们的显赫地位。

2. EL隐含对象

EL即Experssion Language,自JSP2.0后正式成为JSP的标准规范之一,支持Servlet2.4/JSP2.0的Container也就相应的支持EL语法。

一个常见的形式如,<c:out value="${ 3 + 7 * 4}" />

EL的隐藏对象有11个 PageContext PageScope RequestScope sessionScope applicationScope

param paramValues header headerValues cookie initParam

其中param 和 paramValues即对相应ServletRequest.getParameter(String name)和ServletRequest.getParameterValues(String name)

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/moreorless/archive/2009/05/18/4199677.aspx

转载于:https://www.cnblogs.com/xuedexin/articles/5617243.html

request.getParameterValues与request.getParameter的区别 想搞清楚为什么前者返回的是数组...相关推荐

  1. request.getParameterValues与request.getParameter的区别

    一. 简单的对比 request.getParameter用的比较多,相对熟悉 request.getParameterValues(String   name)是获得如checkbox类(名字相同, ...

  2. request.getParameter、request.getParameterValues、request.getParameterMap用法

    首先request中的参数parameter是一个map表,如:map={username=[xxx],password=[xxx],hobby=[eat,drink]} 调用getParameter ...

  3. Request的getHeader()和getParameter()的区别

    区别是:一个是获得HTTP头信息,一个是获得表单参数值. 转载于:https://www.cnblogs.com/pxffly/p/7460514.html

  4. Request、Request.Form和Request.QueryString的区别

    Request.Request.Form和Request.QueryString的区别 Request.Form:获取以POST方式提交的数据(接收Form提交来的数据): Request.Query ...

  5. request.getAttribute()和 request.getParameter()有何区别?

    a.request.getParameter()获取的类型是String:request.getAttribute()获取的类型是Object. b.request.getPrameter()获取的是 ...

  6. ASP.NET中Request.ApplicationPath、Request.FilePath、Request.Path、.Request.MapPath、Server.MapPath的区别

    ASP.NET中Request.ApplicationPath.Request.FilePath.Request.Path..Request.MapPath.Server.MapPath的区别 1.R ...

  7. request的setAttribute()用法及request.sendRedirect 与 request.getRequestDispatcher.forward 的区别

    request.setAttribute()怎么用的? JSP1代码 String [] test=new String[2]; test[0]="1"; test[1]=&quo ...

  8. jsp中request.getAttribute()和 request.getParameter()有何区别

    request.getAttribute()和 request.getParameter()有何区别: a.request.getParameter()取得是通过容器的实现来取得通过类似post,ge ...

  9. request.getRequestDispatcher().forward(request,response)和response.sendRedirect()的区别

    在进行web开发时,跳转是最常见的,今天在这里来学习下2种跳转: 第一种是request.getRequestDispatcher().forward(request,response): 1.属于转 ...

最新文章

  1. Windbg双机调试环境配置(Windows7/Windows XP+VirtualBox/VMware+WDK7600)
  2. 两个要素:人和思考——《软件人才管理的艺术》书评
  3. 不同的二叉搜索树-战胜100%的Java用户
  4. Linux命令之at
  5. 基于组合遗传粒子群算法的旅行商问题求解
  6. Tiled 瓦片地图
  7. 修改Jtable字体颜色
  8. LeetCode 20.有效括号
  9. ansible 批量部署ssh免密钥
  10. mysql修改表结果
  11. ECCV 2020 | 可解释和泛化的行人再辨识
  12. mysql5.5启动报错:The server quit without updating PID file ([FAILED]localhost.localdomain.pid)....
  13. html开发日记-form button
  14. 《并行计算的编程模型》一1.10 MPI开发心得
  15. 可视化神器Scikit-plot实践入门
  16. 小米Note 3完美刷成开发版获取root权限的步骤
  17. Gateway原理及实例
  18. 上海七宝惊现海宝美眉
  19. 网易传媒Go语言探索
  20. ASEMI代理ADG736BRMZ-REEL7原装ADI车规级ADG736BRMZ-REEL7

热门文章

  1. 使用 NOR Flash 中的supervivi 下载裸机程序到NandFlash
  2. 对ListView滚动状态的监听
  3. go的http包详解
  4. Golang中常用的并发模型
  5. 动态规划算法--矩形最小路径和
  6. C++中的friend详细解析
  7. tmpfs 内存文件系统
  8. 常考数据结构与算法:判断二叉树是否对称(迭代法,递归法)
  9. mybaits二:通过接口类,查询数据
  10. Nginx+Redis+Ehcache:大型高并发与高可用的三层缓存架构总结