JSP的request對象

requst對象封裝了有客戶端生成的HTTP請求的所有細節,主要包括HTTP頭信息、系統信息、請求方式和請求參數等。

1、獲取訪問請求參數

request.getParameter("");

在使用request的getParameter()方法獲取傳遞的參數值時,如果指定的參數不存在,將返回null,如果指定了的參數名,但未指定參數值,將返回空的字符串“”

2、獲取表單提交的信息

request.Parameter();

request.getParameterValues();  //獲取複選框和多選框被選定的內容

3、解決中文代碼

1)獲取訪問請求參數是亂碼

當訪問請求參數是中文時,通過request對象獲取到的中文參數值爲亂碼,這是因爲該請求參賽採用的是ISO-8859-1編碼,不支持中文。所以,只有就愛那個獲取到的數據同過String的構造方法使用UTF-8貨GBK編碼重新構造一個String對象,纔可以正確地顯示中文。

String user =new String (request.getParameter("user").getBytes("ISO-8859-1","utf-8"));

2)獲取表單提交的信息亂碼

當獲取表單提交的信息時,通過request對象獲取到的中文參數值爲亂碼。這可以通過在page指令的下方加上調用request對象的setCharacterEncoding()方法將編碼設置爲UTF-8或是GBK解決。

request.setCharacterEncoding("UTF-8");

調用request對象的setCharacterEncoding()方法的語句,一定要在頁面中沒有任何調用request對象的方法時才能使用,否則該語句將不起作用!

4、通過request對象進行數據傳遞

request.setAttribute(String name,Object object);
request.getAttribute(Stirng name)

5、獲取客戶端信息 

getHeader(String name):獲取HTTP協議定義的文件頭信息

getHeaders(String name):返回指定名字的request Header 的所有值,其結果是一個枚舉類型的實例

getHeadersNames() :返回所有request Header的名字,其結果是一個枚舉型的實例

getMethod():獲得客戶端向服務器端傳送數據的方法,如get post header trace等

getProtocol:獲得客戶端向服務器傳遞數據所以依據的協議名稱

getRequestURL():獲得付出請求字符串的客戶端地址,不包括請求的參數

getRequestURI():獲取發出請求字符串的客戶端地址

getRealPath():返回當前請求文件的絕對路徑

getRemoteAddr():獲取客戶端的IP地址

getRemoteHost():獲取客戶端的主機名

getServerName():獲取服務器的名字

getServerPath():獲取客戶端鎖清秋的腳本文件的文件路徑

getServerPort():獲取服務器的端口號

6、獲取cookie

Cookie[ ] cookies= request.getCookies();

7、顯示國際話信息

java.util.Locale locale = request.getLocale();

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章