第四章Servlet处理表单数据_第1页
第四章Servlet处理表单数据_第2页
第四章Servlet处理表单数据_第3页
第四章Servlet处理表单数据_第4页
第四章Servlet处理表单数据_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JavaWeb开发天津师范大学刘洋第四章Servlet处理表单数据HTML表单Servlet接收HTML表单信息JSValidation验证框架FCKeditor更多参考信息HTML表单客户通过浏览器可以发送给Web服务器的请求一共有7种,“POST、GET、PUT、DELETE、OPTIONS、HEAD和TRACE”,但是在实际的Web编程中,我们只需要关注“POST”和“GET”请求,而其它的5种请求极少使用。POST请求是通过HTML中表单(Form)进行发送的,表单中包括了不同形式的输入组件Inputtext、Inputpassword、Inputradio、Inputcheckbox、Select单选、Select多选、Textarea

Submit按钮、Reset按钮HTML表单

Form标记使用的基本语法如下。<formmethod="post"action="/servlet/addMessage"></form>HTML表单Inputtext<formmethod="post“action="/servlet/login">用户名:<inputtype="text"name="username"size="16"maxlength="8"value="Liuwei"></form>HTML表单

Inputpassword<formmethod="post"action="/servlet/login">密码:<inputtype="password"name="password"size="20"maxlength="8"></form>HTML表单

Inputradio<formmethod="post"action="/servlet/login">请选择您的性别:<inputname="gender"type="radio"value="male"checked>男<inputname="gender"type="radio"value="female">女</form>HTML表单

Inputcheckbox<formmethod="post"action="/servlet/login">请选择您的兴趣:<inputname="interest"type="checkbox"value="movie">看电影<inputname="interest"type="checkbox"value="music">听音乐<inputname="interest"type="checkbox"value="tv">看电视<inputname="interest"type="checkbox"value="sing">唱歌</form>HTML表单

Select单选<formmethod="post"action="/servlet/login">请选择您的出生地:<selectname="city"><optionvalue="Beijing">北京</option><optionvalue="Tianjin">天津</option><optionvalue="Shanghai">上海</option><optionvalue="Chongqing"selected>重庆</option><optionvalue="etc">其它</option></select></form>HTML表单

Select多选<formmethod="post"action="/servlet/login">请选择您的兴趣:<selectname="interest"multiplesize="5"><optionvalue="movie">看电影</option><optionvalue="music">听音乐</option><optionvalue="tv">看电视</option><optionvalue="sing">唱歌</option></select></form>HTML表单

Textarea<formmethod="post"action="/servlet/guestbook">留言内容:<textareaname="comment"rows="10"cols="40">大家好</textarea></form>HTML表单

Submit按钮<formmethod="post"action="/servlet/login"><inputtype="submit"name="submit"value="确定"></form>HTML表单

Reset按钮<formmethod="post"action="/servlet/login">用户名:<inputname="username"size="16"maxlength="16"><inputtype="reset"value="重新输入"></form>Servlet接收HTML表单信息publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{

response.setContentType("text/html;charset=utf-8");

PrintWriterout=response.getWriter(); … out.println("<formmethod=\"post\"action=\""+request.getContextPath() +"/servlet/loginForm\">"); … out.println("用户名:</td><td>"); out.println("<inputtype=\"text\"name=\"username\"size=\"20\">"); out.println("</td></tr><tr><td>"); out.println("密码:</td><td>"); out.println("<inputtype=\"password\"name=\"password\"size=\"20\">"); … out.println("<td><inputtype=\"submit\"value=\"登录\"></td></tr>"); …

out.flush(); out.close(); }Servlet接收HTML表单信息publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=utf-8"); …request.setCharacterEncoding("utf-8");…

Stringusername=request.getParameter("username"); Stringpassword=request.getParameter("password");

if(username==null||username.length()==0||password==null ||password.length()==0){ out.println("<h2>输入用户名和密码不正确!</h2>"); out.println("<br><ahref=\""+request.getContextPath() +"/servlet/loginForm\">请重新登录</A>"); }else{ out.println("<h2>用户输入信息:</h2>"); out.println("<strong>用户名:"+username+"</strong><br>"); out.println("<strong>密码"+password+"</strong><br>"); } … }解决表单中文参数乱码HTML表单增加JavaScript验证

<formname="form1"action="/webproject2/servlet/login"method="post"onsubmit="returnvalidate(this)"><tableborder="0"><tr><td>用户名:</td><td><inputtype="text"name="username"></td></tr><tr><td>密码:<br></td><td><inputtype="password"name="password"></td></tr><tr><tdcolspan="2"align="center"><inputtype="submit"name="submit"value="登录"></td></tr></table></form>

HTML表单增加JavaScript验证<scriptlanguage="JavaScript"> functionvalidate(myform){ if(myform.username.value.length==0){ alert("请填写用户名!"); myform.username.focus(); returnfalse; } if(myform.password.value.length==0){ alert("请填写密码!"); myform.password.focus(); returnfalse; } returntrue; }</script>网络调查表html<formmethod="post"action="/webproject2/servlet/survey"><tableborder="0"><tr><tdalign="right">姓名:</td><tdcolspan="2"align="left"><inputtype="text"name="name"size="40"></td></tr>…<tr><td><inputtype="reset"value="reset"><inputtype="submit"value="submit"></td></tr></table></form>网络调查表/webproject2/servlet/surveypublicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ … out.println("<strong>用户名:"+filter(request.getParameter("name")) +"</strong><br>"); out.println("<strong>email:"+filter(request.getParameter("email")) +"</strong><br>"); out.println("<strong>年纪:"+request.getParameter("age") +"</strong><br>"); out.println("<strong>编程时间:"+request.getParameter("codetime") +"</strong><br>"); out.println("<strong>使用的操作系统:</strong>"); printValues(out,request.getParameterValues("os")); out.println("<strong>使用的编程语言:</strong>"); printValues(out,request.getParameterValues("language")); out.println("<strong>建议:"+filter(request.getParameter("comment")) +"</strong><br>"); … }网络调查表filterpublicStringfilter(Stringinput){ if(input==null){ returnnull; } if(input.length()==0){ returninput; } input=input.replaceAll("&","&"); input=input.replaceAll("<","<"); input=input.replaceAll(">",">"); input=input.replaceAll(""," "); input=input.replaceAll("'","'"); input=input.replaceAll("\"","""); returninput.replaceAll("\n","<br>"); }网络调查表printValuespublicvoidprintValues(PrintWriterout,String[]values){ if(values==null||values.length==0){ return; } out.println("<ul>"); for(inti=0;i<values.length;i++){ out.println("<li>"+values[i]+"</li>"); } out.println("</ul>"); }JSValidation验证框架JSValidation验证框架的官方网址为:/projects/jsvalidation下载JSValidationJSValidation验证框架支持13种验证规则。输入内容非空输入数值必须为整数输入数值必须为双精度浮点数输入字符必须为普通英文字符(字母,数字,下划线)输入字符必须为中文字符输入的内容是否为Email格式输入内容最大长度输入内容最小长度输入的内容是否为日期格式(yyyy-mm-dd)自定义的正则表达式输入数值的整数范围(大于某数而小于某数)输入数值的双精度数范围输入内容必须与某个域的值相同JSValidation验证框架

validation-config.xml解释<validation-configlang="auto"> <formid="form1"show-error="error"show-type="all"> <fieldname="name"display-name="用户名"onfail=""> <dependname="required"/> <dependname="commonChar"/> <dependname="minLength"param0="3"/> <dependname="maxLength"param0="20"/> </field> <fieldname="email"display-name="email邮箱"> <dependname="required"/> <dependname="email"/> </field> <fieldname="age"display-name="年纪"> <dependname="required"/> </field><fieldname="codetime"display-name="编程时间"> <dependname="required"/> </field><fieldname="os"display-name="使用的操作系统"> <dependname="required"/> </field> <fieldname="language"display-name="使用的编程语言"> <dependname="required"/> </field> <fieldname="comments"display-name="建议"> <dependname="required"/> </field> </form></validation-config>…<head><title>潜在用户网络调查</title><metahttp-equiv

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论