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

JSP
Java 创建cookie和删除cookie
jsp 从web.xml读取连接数据库的参数
jsp 不支持EL表达式,解决办法
jsp 获取客户端的浏览器和操作系统信息
struts2 session 解读
struts2 spring整合fieldError问题
jsp 生成验证码代码
搭建java WEB开发环境和应用
JSP 自定义标签
Java 区分文本中的中英文字符函数
通用JSP页面 jsp入门级文章
jsp struts1 标签实例详解
一个jdbc 测试程序代码
SSH整合中 hibernate托管给Spring得到SessionFactory
jsp SmartUpload 实现上传功能代码
jsp Unsupported encoding: gb2312 错误原因
java Struts2 在拦截器里的跳转问题
jsp 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)
Java 项目生成静态页面的代码
jdk与jre的区别 很形象,很清晰,通俗易懂

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 72 ::
收藏到网摘: 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>")