java servlet 请求_java servlet请求数据
* 獲取請求數(shù)據(jù)
* 請求數(shù)據(jù):
* 請求行:請求方式 請求url 協(xié)議
* getMethod(); 返回請求方式
* getRequestURL();返回請求url
* getREquestUri();返回請求URI
* ` getQueryString(); 返回get請求 中url中的用戶數(shù)據(jù) 注意:post沒有此方法
* getScheme();返回協(xié)議
*
* 請求頭
* getHeader(String name) 根據(jù)鍵名獲取請求頭信息
* 注意:如果獲取的請求頭信息不存在返回null
* getHeaderNames() 返回儲存了請求頭鍵名的枚舉集合
* 請求實體
* getParamenter(String name) 根據(jù)鍵名獲取數(shù)據(jù)
* 鍵名其實就是前端頁面中的表單標(biāo)簽的name屬性的值或者前端頁面其他 * 方式提交數(shù)據(jù)的鍵的名字
* 如果請求中沒有對應(yīng)的請求數(shù)據(jù),則返回null.
* getParameterValues(Sting name)獲取同名不同值的實體數(shù)據(jù),返回數(shù) * 組
* 如果沒有對應(yīng)的鍵名,返回null
* getParamenterNames() 返回實體數(shù)據(jù)中鍵名的枚舉
* 請求相關(guān)的網(wǎng)絡(luò)數(shù)據(jù)
* getRemoteAddr(); 獲取客戶端的IP地址
* getRemotePort(); 獲取客戶端的端口號
* getLocalAddr(); 獲取服務(wù)器端的IP地址
* getLocalPort(); 獲取服務(wù)器的端口號
public class RequestServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//獲取請求信息
//獲取請求行信息
//獲取請求方式 (默認(rèn))請求方式:GET
String method=req.getMethod();
System.out.println("請求方式:"+method);
//獲取請求URL 請求url:http://localhost:8080/code/req
StringBuffer url=req.getRequestURL();
System.out.println("請求url:"+url.toString());
//獲取請求URI 請求uri:/code/req
String uri=req.getRequestURI();
System.out.println("請求uri:"+uri);
//獲取get請求url中的請求數(shù)據(jù) 取get請求url中的請求數(shù)據(jù):ename=zhangsan&psw=123
String query = req.getQueryString();
System.out.println("取get請求url中的請求數(shù)據(jù):"+query);
//獲取協(xié)議 獲取請求協(xié)議:http
String scheme = req.getScheme();
System.out.println("獲取請求協(xié)議:"+scheme);
//請求頭信息
//根基鍵名獲得請求 頭信息
/*獲取瀏覽器版本信息:Mozilla/5.0 (Windows NT 10.0; WOW64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36*/
String agent = req.getHeader("User-Agent");
System.out.println("獲取瀏覽器版本信息:"+agent);
//獲取請求頭中鍵名的枚舉host
/*connection
cache-control
upgrade-insecure-requests
user-agent
accept
accept-encoding
accept-language
cookie*/
Enumeration headerNames = req.getHeaderNames();
while(headerNames.hasMoreElements()) {
//獲取請求頭鍵名
String name=(String)headerNames.nextElement();
//獲取請求頭對應(yīng)的值
String value = req.getHeader(name);
System.out.println(name+":"+value);
}
//獲取請求實體數(shù)據(jù)(用戶數(shù)據(jù))
//根據(jù)鍵名獲取數(shù)據(jù)
String uname = req.getParameter("uname");
String psw = req.getParameter("psw");
System.out.println("請求實體數(shù)據(jù)"+uname+":"+psw);
//獲取同名不同值的實體數(shù)據(jù)
String[] favs = req.getParameterValues("fav");
if (favs!=null) {
for(String s:favs) {
System.out.println("fav的值"+s);
}
} else {
System.out.println("愛好為空");
}
//獲取請求實體中鍵名的枚舉
Enumeration names = req.getParameterNames();
while(names.hasMoreElements()) {
//獲取鍵名
String name=(String)names.nextElement();
//判斷
if ("fav".equals(name)) {
String[] favs2 = req.getParameterValues("fav");
if (favs!=null) {
for(String s:favs2) {
System.out.println(name+":"+s);
}
}
//獲取值
String value = req.getParameter(name);
System.out.println(name+":"+value);
}
}
//獲取相關(guān)的網(wǎng)絡(luò)數(shù)據(jù)
//獲取客戶端信息
String remoteAddr = req.getRemoteAddr();
System.out.println("獲取客戶端的IP地址:"+remoteAddr);
//獲取客戶端的端口號(瀏覽器)
int remotePort = req.getRemotePort();
System.out.println("獲取客戶端的端口號:"+remotePort);
//獲取服務(wù)器主機IP
String localAddr = req.getLocalAddr();
System.out.println("獲取服務(wù)器的IP地址:"+localAddr);
//獲取服務(wù)器的端口號
int localPort = req.getLocalPort();
System.out.println("獲取服務(wù)器的端口號:"+localPort);
//處理請求信息l
//響應(yīng)處理結(jié)果
}
}
總結(jié)
以上是生活随笔為你收集整理的java servlet 请求_java servlet请求数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java注释 link_开源代码中注释中
- 下一篇: java runtime shell_j