《Servlet和JSP学习指南》一1.10 处理HTML表单

简介: 本节书摘来自华章出版社《Servlet和JSP学习指南》一书中的第1章,第1.10节,作者(加)Budi Kurniawan,更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.10 处理HTML表单

每个Web应用程序中几乎都会包含一个或者多个HTML表单,用来接收用户输入。你可以轻松地将一个HTML表单从Servlet发送到浏览器。当用户提交表单时,在表单元素中输入的值会被当作请求参数发送到服务器。
HTML输入域(文本域、隐藏域或密码域)或者文本域的值被当作一个字符串发送到服务器。对于空白的输入域或者文本域将发送一条空白的字符串。因此,带有一个输入域名称的ServletRequest.getParameter将永远不会返回null。
HTML的select元素还会给标头发送一个字符串。如果没有选择select元素中的任何选项,那么将会发送所显示的选项值。
对于一个带有多个值的选择元素(即允许多个选项的select元素,用<select multiple>表示)是发送一个字符串数组,并且必须由ServletRequest.getParameterValues进行处理。
复选框比较特别一些。被选中的复选框将字符串“on”发送到服务器。没有被选中的复选框则不发送任何内容到服务器,并且ServletRequest.getParameter(fieldname)返回null。
单选按钮将被选按钮的值发送到服务器。如果没有选中任何按钮,则不发送任何内容到服务器,并且ServletRequest.getParameter(fieldname)返回null。
如果一个表单包含多个同名的输入元素,那么所有的值都会提交,必须用ServletRequest. getParameterValues来获取它们。ServletRequest.getParameter将只返回最后一个值。
代码清单1-4中的FormServlet类示范了处理HTML表单的方法。它的doGet方法发送了一个订单表单给浏览器。它的doPost方法获取输入的值,并输出它们。这个Servlet是app01b应用程序的一部分。
image
image
image
image
image
image

可以利用下面这个URL调用FormServlet:
image

被调用的DoGet方法将这个HTML表单发送给浏览器。

image

表单的方法被设置为post,确保当用户提交表单时,采用的是HTTP POST方法。它的action属性缺失,表示表单会提交给发出请求的那个URL。
图1-6展示了一个空白的订单表单。

image

现在,填写表单,并单击Submit(提交)按钮。在表单中输入的值将会通过HTTP POST方法发送到服务器,这样就会调用Servlet的doPost方法。因此,将会看到如图1-7所示的值。

image

相关文章
|
13天前
|
Java
学院管理系统【JSP+Servlet+JavaBean】(Java课设)
学院管理系统【JSP+Servlet+JavaBean】(Java课设)
34 3
学院管理系统【JSP+Servlet+JavaBean】(Java课设)
|
7天前
|
数据安全/隐私保护 UED
HTML表单
HTML表单
16 1
|
13天前
|
Java
排课系统【JSP+Servlet+JavaBean】(Java课设)
排课系统【JSP+Servlet+JavaBean】(Java课设)
28 5
|
13天前
|
Java
仓库管理系统【JSP+Servlet+JavaBean】(Java课设)
仓库管理系统【JSP+Servlet+JavaBean】(Java课设)
20 1
|
13天前
|
Java
学校教师管理系统【JSP+Servlet+JavaBean】(Java课设)
学校教师管理系统【JSP+Servlet+JavaBean】(Java课设)
23 2
|
13天前
|
开发框架 缓存 Java
JSP 教程 之 Eclipse JSP/Servlet 环境搭建 1
本教程指导如何使用Eclipse搭建JSP/Servlet开发环境。需下载Eclipse J2EE和Tomcat,将Tomcat解压至无中文和空格的D盘目录。启动Tomcat后,服务器运行,通过浏览器访问`http://localhost:8080/`。在Tomcat的webapps\ROOT目录创建test.jsp文件,输入代码并访问`http://localhost:8080/test.jsp`以验证环境配置成功。
11 1
|
13天前
|
Java
校园帮【JSP+Servlet+JavaBean】(Java课设)
校园帮【JSP+Servlet+JavaBean】(Java课设)
18 1
|
13天前
|
Java
新闻发布系统【JSP+Servlet+JavaBean】(Java课设)
新闻发布系统【JSP+Servlet+JavaBean】(Java课设)
20 2
|
13天前
|
Java
学校人员管理系统【JSP+Servlet+JavaBean】(Java课设)
学校人员管理系统【JSP+Servlet+JavaBean】(Java课设)
23 2
|
13天前
|
Java
学生信息管理系统【JSP+Servlet+JavaBean】(Java课设)
学生信息管理系统【JSP+Servlet+JavaBean】(Java课设)
24 1