//Returns the part of this request's URL from the protocol name up to the query string in the first line of the HTTP request
// eg. /manage/editExam.domethod=goExamSet&type=U
String url = request.getRequestURI();
//The returned URL contains a protocol, server name, port number, and server path, but it does not include query string parameters
//eg. http://127.0.0.1:8080/manage/editExam.domethod=goExamSet&type=U
StringBuffer url_buffer = request.getRequestURL();
HttpServletRequest 的這兩種方法都只能得到不包含參數的請求url,區別如下:
1 前者返回相對路徑,後者返回完整路徑
2 前者返回string ,後者返回stringbuffer
要想得到完整請求url可以通過如下方法,getQueryString()得到的是url後面的參數串,和前者相加就是帶參數的請求路徑了
String url = request.getRequestURI();
String queryString = request.getQueryString();
String fullPath = url + queryString; // 或者是url_buffer.toString()+queryString;
request.getParameterMap()的返回類型是Map類型的對象,也就是符合key-value的對應關係,但這裏要注意的是,value的類型是String[],而不是String. 得到jsp頁面提交的參數很容易,但通過它可以將request中的參數和值變成一個map,以下是將得到的參數和值打印出來,形成的map結構:map(key,value[]),即:key是String型,value是String型數組。 例如:request中的參數t1=1&t1=2&t2=3 形成的map結構: key=t1;value[0]=1,value[1]=2