RequestDemoServlet:
package com.xxx.line;
import java.io.IOException;
import java.util.Enumeration;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class RequestDemoServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1、获得请求方式
String method = request.getMethod();
//2、获得请求的资源相关的内容
String requestURI = request.getRequestURI();
StringBuffer requestURL = request.getRequestURL();
//3、获得web应用的名称
String contextPath = request.getContextPath();
//4、获取GET参数
String queryString = request.getQueryString(); // name=zhangsan&age=20
//5、获得客户端IP地址
String remoteAddr = request.getRemoteAddr(); // 127.0.0.1
//*****************************************************
// 获取请求头
//1、获得指定的请求头(常用)
String header = request.getHeader("User-Agent");
System.out.println(header);
//2、获得所有请求头的名称
Enumeration<String> headerNames = request.getHeaderNames();
while(headerNames.hasMoreElements()){
String headerName = headerNames.nextElement();
String headerValue = request.getHeader(headerName);
System.out.println(headerName+":"+headerValue);
}
//************************************************************
//1、获取单个参数值 (GET、POST传的参数都可以获取)
String username = request.getParameter("username");
System.out.println(username);
//2、获取多个复选框的值(复选框的name属性值相同)
String[] hobbys = request.getParameterValues("hobby");
//3、获取所有请求参数的名称 (不常用)
Enumeration<String> parameterNames = request.getParameterNames();
while(parameterNames.hasMoreElements()){
System.out.println(parameterNames.nextElement());
}
//4、获得所有参数;返回Map<String,String[]>,因为复选框可能传多个值,所以泛型用String[]数组
Map<String, String[]> parameterMap = request.getParameterMap();
for(Map.Entry<String, String[]> entry:parameterMap.entrySet()){
System.out.println(entry.getKey());
for(String str:entry.getValue()){ // 复选框的值有多个,需要遍历
System.out.println(str);
}
System.out.println("---------------------------");
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}