1. 获取上上个请求的URL
在HTTP的request对象中,可以取到HTTP头HEADER,其中有一个是"Referer",通过它,我们可以知道上上个请求的URL
String retUrl = request.getHeader("Referer");
2. 获取当前请求的URL
/**
* 格式化中文字符,防止出现乱码
* @param str
* @return
*/
public String codeToString(String str) {
String strString = str;
try {
byte tempB[] = strString.getBytes("ISO-8859-1");
strString = new String(tempB);
return strString;
} catch (Exception e) {
return strString;
}
}
/** *//**
* 获取完整的Url
* @param request
* @return
* @throws Exception
*/
public String getBackUrl(javax.servlet.http.HttpServletRequest request) throws Exception {
String strBackUrl = "";
try {
strBackUrl = "http://" + request.getServerName() + ":"
+ request.getServerPort() + request.getContextPath()
+ request.getServletPath() + "?"
+ this.codeToString(request.getQueryString());
strBackUrl = java.net.URLEncoder.encode(strBackUrl,"gbk");
} catch(Exception e) {
throw e;
}
return strBackUrl;
}