当前位置: 首页 > 图文教程 > 网络编程 > JSP > 处理表单提交的数据

JSP
客户端界面中可视化的实现树形框架的设计
Win2000下JBoss开发环境配置
调试处理系统核心文件
Matrix java 大讲坛 之 可用性与人机界面
JMX调试----第三方工具使访问更加容易
用BSF如何在Java中嵌入javascript以及如何在javascript中
再次提醒\" 请不要做浮躁的人\"
从Coding Fan到真正的技术专家(cjsdn)
数据库BEAN:RESIN连接池
基于Java的Web服务器工作原理(一)
XDE中模式驱动的设计与开发(三)
页面流(Page flow)表单验证
高级页面流(Page flow):嵌套、异常处理和 Global.app
请不要做浮躁的人(ZT-必读)
解决日期选择问题,一劳永逸(使用Decorator模式实现日期选择组件)(二)
解决日期选择问题,一劳永逸(使用Decorator模式实现日期选择组件)(三)
解决日期选择问题,一劳永逸(使用Decorator模式实现日期选择组件)(四)
解决日期选择问题,一劳永逸(使用Decorator模式实现日期选择组件)(五)
EJB技术之旅(一)
MVC渐行渐进(二)

JSP 中的 处理表单提交的数据


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 45 ::
收藏到网摘: n/a

来源:LoveJSP.site
在Web程序设计中,处理表单提交的数据是获取Web数据的主要方法,今天,我们来看一看Servlet中是怎样处理来自表单的数据的。

表单数据的提交方法有两种Post方法和Get方法,当使用Post方法时,数据由标准的输入设备读入,当使用Get方法时,数据由CGI变量QUERY_STRING传递给表单数据处理程序。

Servlet会自动将以上两种方法得到的数据进行处理,从而使用户只要简单的调用HttpServletRequest的getParameter方法,给出变量名称即可取得该变量的值。需要注意的是,变量的名称是大小写敏感的。对于Post方法或Get方法提交的数据,Servlet的处理方法是一样的。当请求的变量不存在时,将会返回一个空字符串。如果变量有多个值,你应该调用getParameterValues,这个方法将会返回一个字符串数组。使用getParameterNames可以取得所有变量的名称,该方法返回一个Emumeration方法。

下面让我们来看一个简单的例子,下面这个Servlet读取表单中指定名称的五个字段的值。下载这个例子

//Html file----> postdata.htm 下载本文件
<html>
<head>
<title>getFormData Servlet Example form LoveJSP.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body bgcolor="#FFFFFF">
<h1 align="center"> <i><b>Demo Page</b></i></h1>
<form action="/try/servlet/lovejsp.getFormData">
<p> </p>
<table width="41%" border="2" align="center">
<tr bgcolor="#6633CC" align="center">
<td colspan="2" align="center"><font color='white'>getFormData Servlet Demo
Page</font></td>
</tr>
<tr bgcolor="#FFFFCC">
<td align="center" width="43%">
<div align="right">username:</div>
</td>
<td width="57%">
<div align="left">
<input type="text" name="username">
</div>
</td>
</tr>
<tr bgcolor="#CCFF99">
<td align="center" width="43%">
<div align="right">password:</div>
</td>
<td width="57%">
<div align="left">
<input type="password" name="password">
</div>
</td>
</tr>
<tr bgcolor="#FFFFCC">
<td align="center" width="43%">
<div align="right">Email:</div>
</td>
<td width="57%">
<div align="left">
<input type="text" name="email">
</div>
</td>
</tr>
<tr bgcolor="#CCFF99">
<td align="center" width="43%">
<div align="right">Homepage:</div>
</td>
<td width="57%">
<div align="left">
<input type="text" name="Homepage">
</div>
</td>
</tr>
</table>
<p align="center">
<input type="reset" name="Reset" value="clear">
<input type="submit" name="Submit2" value="Let's Go">
</p>
</form>
</body>
</html>

//Servlet File getFormData.java 下载本文件

package lovejsp;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

/** Servlet getParameter Ex from Lovejsp.site(http://www.lovejsp.com)
*/

public class getFormData extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String title = "读取表单数据";
out.println(LovejspTools.headTitle(title) + //a tools method to show the html code with title
"<BODY BGCOLOR=\"#FDF5E6\">\n" +
"<H1 ALIGN=CENTER>" + title + "</H1>\n" +
"<UL>\n" +
" <LI><B>username</B>: "
+ request.getParameter("username") + "\n" +
" <LI><B>password</B>: "
+ request.getParameter("password") + "\n" +
" <LI><B>Email</B>: "
+ request.getParameter("Email") + "\n" +
" <LI><B>Homepage</B>: "
+ request.getParameter("Homepage") + "\n" +
"</UL>\n" +
"</BODY></HTML>")