JSP 表单处理

  我们在浏览网页的时候,经常需要向服务器提交信息,并让后台程序处理。浏览器中使用 GET 和 POST 方法向服务器提交数据。

  GET 方法

  GET方法将请求的编码信息添加在网址后面,网址与编码信息通过"?"号分隔。如下所示:

  http://www.w3cschool.cc/hello?key1=value1&key2=value2

  GET方法是浏览器默认传递参数的方法,一些敏感信息,如密码等建议不使用GET方法。

  用get时,传输数据的大小有限制 (注意不是参数的个数有限制),最大为1024字节。

  POST 方法

  一些敏感信息,如密码等我们可以同过POST方法传递,post提交数据是隐式的。

  POST提交数据是不可见的,GET是通过在url里面传递的(可以看一下你浏览器的地址栏)。

  JSP使用getParameter()来获得传递的参数,getInputStream()方法用来处理客户端的二进制数据流的请求。

  JSP 读取表单数据

  getParameter(): 使用 request.getParameter() 方法来获取表单参数的值。

  getParameterValues(): 获得如checkbox类(名字相同,但值有多个)的数据。 接收数组变量 ,如checkobx类型

  getParameterNames():该方法可以取得所有变量的名称,该方法返回一个Emumeration。

  getInputStream():调用此方法来读取来自客户端的二进制数据流。

  使用URL的 GET 方法实例

  以下是一个简单的URL,并使用GET方法来传递URL中的参数:

  http://localhost:8080/main.jsp?first_name=ZARA&last_name=ALI

  以下是main.jsp文件的JSP程序用于处理客户端提交的表单数据,我们使用getParameter()方法来获取提交的数据:

  

  

  

  

  

  

  

Using GET Method to Read Form Data

  

  

    • First Name:

        <%= request.getParameter("first_name")%>

        

  

    • Last Name:

        <%= request.getParameter("last_name")%>

        

  

  

  

  接下来我们通过浏览器访问http://localhost:8080/main.jsp?first_name=ZARA&last_name=ALI 输出结果如下所示:

  Using GET Method to Read Form Data

  First Name: ZARA

  Last Name: ALI

  使用表单的 GET 方法实例

  以下是一个简单的HTML表单,该表单通过GET方法将客户端数据提交 到main.jsp文件中:

  

  

  

  First Name:

  

  Last Name:

  

  

  

  

  将以上HTML代码保存到Hello.htm文件中。 将该文件放置于<tomcat安装目录>/webapps/ROOT 目录下。 通过访问 http://localhost:8080/Hello.htm,输出界面如下所示:

  在"First Name" 与 "Last Name"两个表单中填入信息,并点击"Submit"按钮,它将输出结果。

  使用表单的 POST 方法实例

  接下来让我们使用POST方法来传递表单数据,修改main.jsp与Hello.htm文件代码,如下所示:

  main.jsp文件代码:

  

  

  

  

  

  

  

Using GET Method to Read Form Data

  

  

    • First Name:

        <%= request.getParameter("first_name")%>

        

  

    • Last Name:

        <%= request.getParameter("last_name")%>

        

  

  

  

  以下是Hello.htm修改后的代码:

  

  

  

  First Name:

  

  Last Name:

  

  

  

  

  通过浏览器访问 http://localhost:8080/Hello.htm,输出如下:

  在"First Name" 与 "Last Name"两个表单中填入信息,并点击"Submit"按钮,它将输出结果。

  传递 Checkbox 数据到JSP程序

  复选框 checkbox 可以传递一个甚至多个数据。

  以下是一个简单的HTML代码,并将代码保存在CheckBox.htm文件中:

  

  

  

   Maths

   Physics

  

  Chemistry

  

  

  

  

  以上代码在浏览器访问如下所示:

  以下为main.jsp文件代码,用于处理复选框数据:

  

  

  

  

  

  

  

Reading Checkbox Data

  

  

    • Maths Flag:

        <%= request.getParameter("maths")%>

        

  

    • Physics Flag:

        <%= request.getParameter("physics")%>

        

  

    • Chemistry Flag:

        <%= request.getParameter("chemistry")%>

        

  

  

  

  以上实例输出结果为:

  读取所有表单参数

  以下我们将使用 HttpServletRequest 的getParameterNames()来读取所有可用的表单参数,该方法可以取得所有变量的名称,该方法返回一个Emumeration。

  一旦我们有了一个Enumeration(枚举),我们就可以调用hasMoreElements()方法来确定何时停止使用和nextElement()方法来获得每个参数的名称。

  <%@ page import="java.io.*,java.util.*" %>

  

  

  

  

  

  

  

HTTP Header Request Example

  

  

  

  

  <%

  Enumeration paramNames = request.getParameterNames();

  while(paramNames.hasMoreElements()) {

  String paramName = (String)paramNames.nextElement();

  out.print("

\n");

  String paramValue = request.getHeader(paramName);

  out.println("

\n");

  }

  %>

  

Param Name Param Value(s)
" + paramName + " " + paramValue + "

  

  

  

  以下是Hello.htm文件的内容:

  

  

  

   Maths

   Physics

   Chem

  

  

  

  

  现在我们通过浏览器访问 Hello.htm 文件并提交数据,输出结果如下:

  你可以尝试使用以上的JSP代码读取其它对象,如文本框,单选按钮或下拉框等等其他形式的数据。(编辑:雷林鹏 来源:网络)

JSP 表单处理的更多相关文章

  1. struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input

    原文地址:struts2 jsp表单提交后保留表单中输入框中的值 下拉框select与input jsp页面 1     function dosearch() {2         if ($(&q ...

  2. JSP表单提交与接收

    JSP表单提交与接收 在Myeclipse中新建web project,在webroot中新建userRegist1.jsp,代码如下 <%@ page contentType="te ...

  3. JSP 表单处理向服务器提交信息

    JSP 表单处理 我们在浏览网页的时候,经常需要向服务器提交信息,并让后台程序处理.浏览器中使用 GET 和 POST 方法向服务器提交数据. GET 方法 GET方法将请求的编码信息添加在网址后面, ...

  4. JSP-Runoob:JSP 表单处理

    ylbtech-JSP-Runoob:JSP 表单处理 1.返回顶部 1. JSP 表单处理 我们在浏览网页的时候,经常需要向服务器提交信息,并让后台程序处理.浏览器中使用 GET 和 POST 方法 ...

  5. JSP表单提交 与 接受显示

    Demo01.jsp 提交表单输入的信息至 Demo02.jsp方法一 1 <%@ page language="java" contentType="text/h ...

  6. JSP表单提交中文乱码解决方案

    分2种提交方式,解决方案不同: 1.form表单提交方式为get 乱码: 解决方案: 因为get方法是参数在URL中显示,因为tomcat的URL编码默认是:IOS-8859-1所以要么改tomcat ...

  7. jsp 表单提交,服务器跳转方法 浏览器重定向 及 servlet映射时 路径问题

    在jsp页面中,等提交表单数据时,最好用觉得路径. 写法如下: <form action ="<%=request.getContextPath()%>/do_login. ...

  8. JSP表单处理

    当需要通过从浏览器获取一些信息,在许多情况下,最终给到Web服务器后台程序.浏览器使用两种方法将这些信息传递给Web服务器.这些方法是GET方法和POST方法. GET 方法: GET方法将追加到页面 ...

  9. JSP 表单request内容

    1. 表单request内容的获取 2. request.setCharacterEncoding("utf-8")对request内容进行编码 3. fullformreques ...

随机推荐

  1. 02.MyBatis配置文件详解

        MyBatis入参考文档:http://mybatis.org/mybatis-3/zh/  1.properties 属性 1.在MyBatis配置文件中引用属性文件     MyBatis ...

  2. SVN 配置和使用

    SVN使用环境 使用SVN管理源代码,必须有2套环境 服务器 用来存储客户端上传的源码 一般都是在Windows环境下安装Visual SVN Server 客户端 用来提交.回退.修改.下载等操作 ...

  3. 二.re库介绍

    一.re库的主要功能函数 1.re.search()用法 2.re.match()的用法 >>> match=re.match(r'[1-9]\d{5}','BIT 100081') ...

  4. 第1章 1.6计算机网络概述--OSI参考模型

    ISO七层模式:国际标准组织对互联网通信规则进行的定义. 7.应用层:所有能产生网络流量的程序,如:QQ. 6.表示层:传输前对数据进行进行处理,是一种数据处理的规则,如:加密.压缩.传输二进制(图片 ...

  5. 求连续出现5次以上的值,并且取第5次所在id

    关键字:求连续出现5次以上的值,并且取第5次所在id 关键字:求在某列连续出现N次值的的数据,并且取第M次出现所在行 需求,求连续出现5次以上的值,并且取第5次所在id SQL SERVER: --测 ...

  6. python 类 __call__

    __call__ 对象后面加括号,触发执行. 即:对象() 或者 类()() class dog(object): def __init__(self,name): self.name = name ...

  7. 表单(中)-EasyUI Combogrid 组合网格、EasyUI Numberbox 数字框、EasyUI Datebox 日期框、EasyUI Datetimebox 日期时间框、EasyUI Calendar 日历

    EasyUI Combogrid 组合网格 扩展自 $.fn.combo.defaults 和 $.fn.datagrid.defaults.通过 $.fn.combogrid.defaults 重写 ...

  8. Linux服务器安装jdk+tomcat

    一.工具 1.1.SecureCRTSecureFX_7.0.0.326 下载地址:https://yunpan.cn/cRnxrv2eaQMwD  访问密码 a018 1.2.jdk 下载地址:问度 ...

  9. Sparsity稀疏编码(二)

           为了更进一步的清晰理解大脑皮层对信号编码的工作机制(策略),需要把他们转成数学语言,因为数学语言作为一种严谨的语言,可以利用它推导出期望和要寻找的程式.本节就使用概率推理(bayes v ...

  10. java 的==和equals的区别(二)

    java 的==和equals的区别 java 的==和equals的区别 ==通常表明引用的是同一个东西(引用的地址相同),equals通常表明两个对象的内容相同(值相同) ------------ ...