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();