JSP中Servlet获取表单数据示例(doGet()和doPost()共用接口)
2009-10-09 12:43
393 查看
仔细钻研下面两个代码绝对让你受益匪浅
1.JSP页(form表单):
<%--
Document : index
Created on : 2009-10-9, 10:37:30
Author : lucifer
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form method="post" action="NewServlet">
用户名:
<input type="text" name="username"><br>
密码:
<input type="password" name="password"><br>
多选:
<p>
<input type="checkbox" value="select1" name="check1">多选1
<input type="checkbox" value="select2" name="check2">多选2
<input type="checkbox" value="select3" name="check3">多选3
</p>
单选:
<p>
<input type="radio" name="Radio" value="Radio1" checked>单选1
<input type="radio" name="Radio" value="Radio2">单选2
<input type="radio" name="Radio" value="Radio3">单选3
</p>
<p>
下拉选择:
<select name="ComboBox" size="1">
<option value="1">下拉选项1</option>
<option value="2">下拉选项2</option>
<option value="3">下拉选项3</option>
</select>
</p>
<p>
列表选择:
<select name="ListBox" size="3" multiple>
<option value="1">列表选择1</option>
<option value="2">列表选择2</option>
<option value="3">列表选择3</option>
</select>
</p>
<input type="submit" value="Ok">
</form>
</body>
</html>
2.Servlet(名字是NewServlet)
/*
Document : NewServlet
Created on : 2009-10-9, 10:37:30
Author : lucifer
*/
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
public class NewServlet extends HttpServlet {
protected void processRequest(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Vector rows;
String requestdata = "";
res.setContentType("text/html;charset=UTF-8");
PrintWriter out = res.getWriter();
try {
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet NewServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet NewServlet at " + req.getContextPath () + "</h1>");
rows = getRequestParametersData(req);
for(int i = 0;i < rows.size();i++){
Vector cols = (Vector)rows.elementAt(i);
for(int j = 0;j <cols.size();j++){
requestdata += cols.elementAt(j);
}
requestdata += "<br>";
}
out.println(requestdata);
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
private Vector getRequestParametersData(HttpServletRequest req){
Vector rows = new Vector();
for(Enumeration e = req.getParameterNames();e.hasMoreElements();){
String name = (String)e.nextElement();
String[] values = req.getParameterValues(name);
Vector cols = new Vector();
cols.addElement(name);
String value = "";
for(int i = 0;i < values.length;i++){
value += "{" + values[i] + "}";
}
cols.addElement(value);
rows.addElement(cols);
}
return rows;
}
//注意他们共用一个接口
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
processRequest(req, res);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
processRequest(req, res);
}
@Override
public String getServletInfo() {
return "~~~";
}
}
1.JSP页(form表单):
<%--
Document : index
Created on : 2009-10-9, 10:37:30
Author : lucifer
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form method="post" action="NewServlet">
用户名:
<input type="text" name="username"><br>
密码:
<input type="password" name="password"><br>
多选:
<p>
<input type="checkbox" value="select1" name="check1">多选1
<input type="checkbox" value="select2" name="check2">多选2
<input type="checkbox" value="select3" name="check3">多选3
</p>
单选:
<p>
<input type="radio" name="Radio" value="Radio1" checked>单选1
<input type="radio" name="Radio" value="Radio2">单选2
<input type="radio" name="Radio" value="Radio3">单选3
</p>
<p>
下拉选择:
<select name="ComboBox" size="1">
<option value="1">下拉选项1</option>
<option value="2">下拉选项2</option>
<option value="3">下拉选项3</option>
</select>
</p>
<p>
列表选择:
<select name="ListBox" size="3" multiple>
<option value="1">列表选择1</option>
<option value="2">列表选择2</option>
<option value="3">列表选择3</option>
</select>
</p>
<input type="submit" value="Ok">
</form>
</body>
</html>
2.Servlet(名字是NewServlet)
/*
Document : NewServlet
Created on : 2009-10-9, 10:37:30
Author : lucifer
*/
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
public class NewServlet extends HttpServlet {
protected void processRequest(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Vector rows;
String requestdata = "";
res.setContentType("text/html;charset=UTF-8");
PrintWriter out = res.getWriter();
try {
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet NewServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet NewServlet at " + req.getContextPath () + "</h1>");
rows = getRequestParametersData(req);
for(int i = 0;i < rows.size();i++){
Vector cols = (Vector)rows.elementAt(i);
for(int j = 0;j <cols.size();j++){
requestdata += cols.elementAt(j);
}
requestdata += "<br>";
}
out.println(requestdata);
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
private Vector getRequestParametersData(HttpServletRequest req){
Vector rows = new Vector();
for(Enumeration e = req.getParameterNames();e.hasMoreElements();){
String name = (String)e.nextElement();
String[] values = req.getParameterValues(name);
Vector cols = new Vector();
cols.addElement(name);
String value = "";
for(int i = 0;i < values.length;i++){
value += "{" + values[i] + "}";
}
cols.addElement(value);
rows.addElement(cols);
}
return rows;
}
//注意他们共用一个接口
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
processRequest(req, res);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
processRequest(req, res);
}
@Override
public String getServletInfo() {
return "~~~";
}
}
相关文章推荐
- struts2_day02_06-获取表单数据(使用ServletActionContext获取和接口注入)
- Servlet:Servlet与JSP九大内置对象的对应关系以及通过Servlet获取表单数据
- 如何在servlet中获取jsp中form表单提交的变量,以及jsp与servlet之间的数据传递
- Java - 服务器收到用户提交的表单数据,到底是调用Servlet的doGet()还是doPost()方法?
- JSP简单练习-用Servlet获取表单数据
- Servlet学习总结(9)----Servlet中的表单数据的获取
- 用Servlet获取表单数据
- Servlet之doPost获取表单参数
- jsp form表单提交获取返回数据(也可用来上传文件、图片)
- Servlet获取表单数据
- servlet 获取表单数据
- JSP通过Servlet提交表单数据并显示
- Servlet获取表单数据
- Servlet 通过表单上传文件和获取表单数据的最简单方式
- Jsp默认打开页面无数据访问Servlet获取数据
- servlet笔记(三)获取表单提交数据
- servlet获取表单数据
- Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据实例
- 关于jspSmartUpload插件获取表单里中文数据乱码问题
- servlet/jsp中得到表单数据的3种方法request.getParameter()、request.getInputStream()和request.getReader()