【Servlet】request对象获取请求头数据和用户数据
生活随笔
收集整理的這篇文章主要介紹了
【Servlet】request对象获取请求头数据和用户数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
request對象學習
/*** request對象學習:* 作用:request對象中封存了當前請求的所有請求信息* 使用:* 獲取請求頭數據* req.getMethod();//獲取請求方式* req.getRequestURL();//獲取請求URL信息* req.getRequestURI();//獲取請求URI信息* req.getScheme();//獲取協議* 獲取請求行數據* req.getHeader("鍵名");//返回指定的請求頭信息* req.getHeaderNames();//返回請求頭的鍵名的枚舉集合* 獲取用戶數據* req.getParameter("鍵名");//返回指定的用戶數據* req.getParameterValues("鍵名");//返回同鍵不同值的請求數據(多選),返回的數組。* req.getParameterNames()//返回所有用戶請求數據的枚舉集合* 注意:* 如果要獲取的請求數據不存在,不會報錯,返回null。* * 注意:* request對象由tomcat服務器創建,并作為實參傳遞給處理請求的servlet的service方法。*/method.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Insert title here</title> </head> <body><form action="RequestServlet" method="post">用戶名:<input type="text" name="uname" value=""><br>密碼: <input type="text" name="pwd" value=""><br><input type="submit" value="登錄" >愛好:<br /><input type="checkbox" name="fav" value="1"/>唱歌<br /><input type="checkbox" name="fav" value="2"/>跳舞<br /><input type="checkbox" name="fav" value="3"/>游泳<br /></form> </body> </html>RequestServlet.java
package cn.hanquan.servlet;import java.io.IOException; import java.util.Enumeration;import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class RequestServlet*/ public class RequestServlet extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 獲取請求頭數據// 獲取請求方式 // 輸出String method = req.getMethod();System.out.println(method); // POST// 獲取請求URLStringBuffer url = req.getRequestURL();System.out.println(url); // http://localhost:8080/01-MyServlet/RequestServlet// 獲取URIString uri = req.getRequestURI();System.out.println(uri); // /01-MyServlet/RequestServlet// 獲取協議String h = req.getScheme();System.out.println(h); // http// 獲取請求行數據// 獲取指定請求行信息String value = req.getHeader("User-Agent");System.out.println(value); // Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0// 獲取所有請求行鍵枚舉Enumeration e = req.getHeaderNames();while (e.hasMoreElements()) {String name = (String) e.nextElement();String value1 = req.getHeader(name);System.out.println(name + ":" + value1);}// 輸出:// host:localhost:8080// user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0// accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8// accept-language:zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2// accept-encoding:gzip, deflate// content-type:application/x-www-form-urlencoded// content-length:21// connection:keep-alive// referer:http://localhost:8080/01-MyServlet/method.jsp// cookie:JSESSIONID=0C3253D72B8F4F612E6500CB85FCAC46// upgrade-insecure-requests:1// 獲取用戶數據(用戶提交的表單)String name = req.getParameter("uname");String pwd = req.getParameter("pwd");System.out.println(name + ":" + pwd);// xiaoming:123456String[] favs = req.getParameterValues("fav");if (favs != null) {for (String fav : favs) {System.out.println(fav);}}} }總結
以上是生活随笔為你收集整理的【Servlet】request对象获取请求头数据和用户数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Servlet】HTTP 协议之请求方
- 下一篇: 【Servlet】response对象给