




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一节 HTML表单提交数据和JSP获得数据为了学习掌握JSP动态网页的设计开发,我们先从大家比较熟悉的表单入手。以前在学习静态网页设计时,做好的表单无法提交数据,那是因为没有接收数据的程序。本节使用一组范例,由HTML的表单提交数据,并使用JSP动态网页获得数据,来说明他们之间的关系和工作原理。一、 范例的演示和代码清单演示的前提:1. 配置好开发运行环境;2. 将随书光盘中的范例ch2,复制到resin2.1.6doc文件夹内;3. 启动JSP引擎;演示步骤:1. 启动IE,在地址栏键入:8080/ch2/ch2-1.htm,如图2-1所示:图 2-12. 在表单的姓名栏键入“张三”,年龄栏键入“21”,性别选择其中的一项,密码栏键入“123”,然后点击“提交”按钮。屏幕出现2-2所示界面:图 2-2注意:访问动态网页必须在启动JSP引擎后,在IE的地址栏键入IP地址和路径文件名,才能进行访问,不能使用直接双击打开的方式。网页的页面上显示了所提交数据的全部内容。请注意,地址栏上的内容是::8080/ch2/ch2-1.jsp。这说明提交的数据已被ch2-1.jsp动态网页接收,并将其送到屏幕上进行显示。当然,可以在表单中填写其他的内容,屏幕显示的内容会随之变化。但是如果在“年龄”项目中填写的不是数字,而是字母、汉字等不正确的内容,屏幕上也会将这些错误内容显示出来,甚至任何一项都不填写,直接点击“提交”按钮,动态网页仍能正常运行。这些问题,我们会在以后的章节中去一一解决。目前先要弄清HTML静态网页和JSP动态网页之间的关系。两个网页的代码如下: 表单 范例ch2-1.htm1) 2) 3) 4) 表单5) 6)7) 8) 使用表单提交数据9) 10) 11) 姓名: 12) 13) 14) 性别: 15) 16) 男 17) 18) 女 19) 年龄:20) 21) 22) 密码: 23) 24) 25) 26) 27) 28) 29) 30) 31) 32) 33) 34) 35) 36) 37) 38) 接收表单数据 范例ch2-1.jsp1) 2) 3) 4) 5) 接收表单数据6) 7) 8) 动态网页接收的数据9) 10) 16) % /接收HTML数据17) name=request.getParameter(xingming);18) xingbie=request.getParameter(xingbie);19) nianling=request.getParameter(nianling);20) password=request.getParameter(mima);21) /将数据送到屏幕上显示22) out.print(“姓名:”+name);23) out.print(“性别:”+xingbie);24) out.print(“年龄:”+nianling);25) out.print(“密码:”+password);26) %27) 28) 返回表单29) 30) 二、HTML表单的构成分析HTML的表单网页,给人最直观的印象就是页面上的各种表单项,比如文本框、密码框、单选按钮、复选项、下拉列表菜单、提交按钮等。实际上,和JSP动态网页发生联系,还有表单(域)的概念。1. 表单项要分析HTML表单中的元素及其作用,首先启动Dreamweaver,在图形设计界面即可看到图2-3所示界面:图 2-3图2-3中有七个表单项,分别是对应“姓名”的文本域,对应“性别”的两个单选按钮,对应“年龄”的文本域,对应“密码”的文本域,以及“提交”、“重写”两个按钮。此时可以把每个表单项看成一个用来存放用户提交数据的容器。每个表单项都有一系列的属性,这些属性起决定其外观及功能的作用。图2-3中已选中“姓名”后面的文本框,在属性面板中“文本域”的表单项名称是“xingming”(姓名的汉语拼音),“类型”是“单行”,其他项目为空。其中“字符宽度”影响文本框的宽窄,“最多字符数”限定文本框能够输入的最多字符数。如果再选中“性别”后面的第一个单选按钮,在属性面板中“单选按钮”的表单项名是“xingbie”,“选定值”为“男”,“初始状态”为“已勾选”。第二个单选按钮,在属性面板中“单选按钮”的表单项名是“xingbie”,“选定值”为“女”,“初始状态”为“未选中”。注意:自己编制含有“单选按钮”的表单项,一定要将其中的一个“初始状态”设为“已勾选”,否则JSP程序不能正常运行。对于有时需要所有“单选按钮” 必须设为“未选中”,解决的方法将在后面讲解。“年龄”后面的文本框,在属性面板中“文本域”的表单项名是“nianling”,“类型”是“单行”,其他项目的值为空。“密码”后面的文本框,在属性面板中“文本域”的表单项名是“mima”,“类型”是“密码”,其他项目的值为空。以上各个表单项的属性值,在与动态网页发生联系时,都起着重要作用。为了更清楚的了解这些属性值,我们看一下ch2-1.htm文件的部分代码行,11) 姓名: 12) 13) 14) 性别: 15) 16) 男 17) 18) 女 第12行中type=”text”的含义:这个表单项的类型是文本域(也称为文本框)。 name =”xingming”的含义:“文本域”的表单项名是“xingming”。第15行中type=”radio”的含义:这个表单项的类型是单选按钮。 name=”xingbie”的含义:“单选按钮”的表单项名是“xingbie”。 Value=”男”的含义:这个单选按钮的值是“男”。 Checked的含义:这个单选按钮已勾选。第17行中name=”xingbie”的含义:“单选按钮”的表单项名是“xingbie”。 Value=”女”的含义:这个单选按钮的值是“女”。我们注意到15行和17行两个“单选按钮”的表单项名都是“xingbie”,这说明他们是属于同一组的单选按钮。在同一组的单选按钮中,只能有一个“值”被选中。还有“提交”、“重写”两个按钮,他们有和动态网页更紧密的联系,我们在下面结合表单域做详细地说明。2. 表单(域)表单中的七个表单项,在同一个表单(域)中。在Dreamweaver的图形设计界面中,可以看到一个红色虚线框,该虚线框就是表单的领域范围。所以我们往往将一个表单又称作为一个表单域。和表单域相关的代码行如下:9) 29) 31) 35) 第9行中是表单域开始的标记。name =”form1”的含义:把整个表单看成一个大容器,容器名是”form1” method=”post”的含义:表单提交数据时,传递方式为整批发送。action=”ch2-1.jsp”的含义:表单提交的数据,由ch2-1.jsp接收。第29行中type=”submit”的含义:按钮的作用是将所在表单域内的数据送出去。第31行中type=”reset”的含义:按钮的作用是将所在表单域内的数据清空。第35行中的 是表单域结束的标记。综上所述,一个规范完整的表单HTML文档,应该具备如下条件: 有表单的开始标记和结束标记,限定表单域的范围; 在表单开始标记的参数中,必须含有提交数据传送的方式和接收数据的程序(动态网页)文件名; 在表单域范围内,放置表单项,每个表单项要定义需要的属性; 在表单域范围内,要有“提交”按钮;因此,在Dreamweaver的图形设计界面下,完成表单的制作后,必须进入文本方式的代码界面,将表单开始标记参数中的action=“”填入相应JSP文件名。三、JSP动态网页构成分析初次接触JSP动态网页,还需了解一下JSP网页的基本知识,尤其是与本范例有关的知识,然后学习其构成及如何获得HTML提交的数据。JSP动态网页所涉及到的其他一些概念和知识,将在后面的范例中进行介绍。现在需要了解的JSP网页基本知识如下:1. JSP动态网页主要解决某些功能的实现,并了解程序代码及其主要成分;2. JSP动态网页是在HTML超文本语言中镶嵌java代码构成的;3. 嵌入的java代码,放在 标记中,要符合java的语法;4. JSP动态网页的文件扩展名是 .jsp;5. 纯粹解决某些功能的JSP动态网页,可以不包括任何HTML代码。我们看一下ch2-1.jsp动态网页的程序代码。第1行: 是JSP动态网页的页命令,他对动态网页整体性能的控制起着重要作用,这些命令后面要专门讲解。现在只需知道,动态网页中不能缺少这一行。第2行第9行:是纯粹的HTML代码。学习过HTML超文本语言的一看就懂。第10行第15行:是放在 标记中的java代码,定义了四个字符串型的变量。因为在HTML表单中有四个承载数据的表单项,定义这些变量是为下面接收获得数据进行准备。第16行第21行:也是放在 标记中的java代码,他的作用是获得HTML表单提交的数据。等号作用是赋值,等号左边是已经定义好的JSP变量,等号右边是从HTML表单获得的数据。request.getParameter( )是JSP默认对象中的一个方法,获得HTML表单提交的数据,必须使用这个方法。17) name=request.getParameter(xingming); JSP变量name获得HTML表单中xingming表单项中的数据。18) xingbie=request.getParameter(xingbie); JSP变量xingbie获得HTML表单中xingbie表单项中的数据。19) nianling=request.getParameter(nianling); JSP变量nianling获得HTML表单中nianling表单项中的数据。20) password=request.getParameter(mima); JSP变量password获得HTML表单中mima表单项中的数据。在这里我们看到JSP动态网页和HTML静态网页发生的联系,这条语句等号左边必须是已经定义好的JSP变量,右边request.getParameter( )方法的括号( )中必须是HTML表单中的表单项名。同时也会发现每个表单项名加上了(“ ”),语句的结尾使用了分号(;),这都是java语法所要求的。特别注意:a. JAVA语言对于字母的大、小写区分非常敏感,一点也不能错,否则就是错误语句。b. 语句行中所有的符号 等号、括号()、引号 “ ”、分号;都必须是半角英文的符号,如果使用了中文全角的符号,程序行就成为非法语句。在今后的编程中,这些都是经常容易出错的地方。第2225行:是将获得的数据送到屏幕上显示,这是JSP最常用的输出语句。22) out.print(“姓名:”+name); 23) out.print(“性别:”+xingbie);24) out.print(“年龄:”+nianling);25) out.print(“密码:”+password);第22行中out.print( ) 是JSP默认类的一个方法,()中是输出的内容; “姓名:” 是输出的字符串;+ 是字符串和变量的连接符;name 、xingbie、 nianling、 password都是JSP变量,已在17、18、19、20行获得HTML提交的数据。第23行中的 ,是在JSP输出语句中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论