Servlet - request对象相关

 

request对象中封装了当前请求的所有请求信息,

request对象由Tomcat服务器创建, 并作为实参传递给处理请求的Servlet的service()方法

 

1. 获取请求头数据

// 获取请求方式
System.out.println("请求方式: " + req.getMethod());

// 获取请求URL
System.out.println("获取请求URL: " + req.getRequestURL());

// 获取请求URI
System.out.println("获取请求URI: " + req.getRequestURI());

// 获取请求协议
System.out.println("获取请求协议: " + req.getScheme());

 

2. 获取请求行数据

// 获取所有的请求行键的枚举
Enumeration headerNames = req.getHeaderNames();
while(headerNames.hasMoreElements()) {
    String headerName = headerNames.nextElement();
    // 根据指定的键, 获取请求行中对应键的值
    System.out.println(headerName + " : " + req.getHeader(headerName));
}

 

3. 获取用户数据

// 根据键获取用户提交的数据
System.out.println("username : " + req.getParameter("username"));

// 如果键不存在, 则获取的数据为null
System.out.println("password : " + req.getParameter("aaa"));

// 对于同键不同值, req.getParameter()没有办法获取, 会漏值
// 可以用getParameterValues()获取, 得到一个所有值的数组
String[] favs = req.getParameterValues("fav");
if (favs != null) {
    System.out.print("fav : ");
    for (String fav : favs) {
        System.out.print(fav + " ");
    }
    System.out.println("");
}

// 返回所有用户请求数据的键的枚举
Enumeration params = req.getParameterNames();
while(params.hasMoreElements()) {
    String param = params.nextElement();
    // 根据指定的键, 获取用户请求数据中的键对应的值
    // 同键不同值的话, 还是需要用req.getParameterValues()方法
    System.out.println(param + " : " + req.getParameter(param));
}

你可能感兴趣的:(Servlet - request对象相关)