request获取各种形式的数据
- 新建form.html
- 新建Demo2Servlet处理来自form表单的请求并通过request对象的集中常用方法获取各种形式的数据
package com.oracle;
import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class Demo2Servlet
*/
public class Demo2Servlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//response.getWriter().append("Served at: ").append(request.getContextPath());
// //获取前台传递的参数
// String username = request.getParameter("username");
// String password = request.getParameter("pwd");
//
// //获取单值
// System.out.println(username);
// System.out.println(password);
//
// //获取多值
// String[] vals = request.getParameterValues("hobby");
// for(String val:vals) {
// System.out.println(val);
// }
//获取表单中的所有数据
Map<String, String[]> map = request.getParameterMap();
for(String s:map.keySet()) {
String[] strs = map.get(s);
for(String st:strs) {
System.out.println(st);
}
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
- 请求转发
假设我们刚刚处理的表单就是一个网站的注册页面,提交登录成功后,我们需要跳转到登录页面(从一个页面跳转到另一个页面)
解决办法:
我们只需要在doGet方法的最后增加下面一行代码(假设1.html为登录页面):
//请求转发到1.html页面
request.getRequestDispatcher("/1.html").forward(request, response);