在Java中,可以使用HttpServletRequest對象來獲取當前請求的URL以及服務(wù)器根路徑??梢园凑找韵虏襟E來獲取:
- 在處理請求的方法中,添加HttpServletRequest對象作為參數(shù)。
publicvoidhandleRequest(HttpServletRequestrequest,HttpServletResponseresponse){//處理請求的代碼}
- 使用HttpServletRequest對象的方法來獲取請求的URL和服務(wù)器根路徑。
StringrequestUrl=request.getRequestURL().toString();StringrequestUri=request.getRequestURI();StringcontextPath=request.getContextPath();StringserverPath=requestUrl.substring(0,requestUrl.indexOf(contextPath)+contextPath.length());
在上述代碼中,request.getRequestURL().toString()
可以獲取當前請求的完整URL,request.getRequestURI()
可以獲取當前請求的URI(不包括服務(wù)器根路徑),request.getContextPath()
可以獲取服務(wù)器根路徑。
注意:通過request.getRequestURL().toString()
獲取的URL是包含協(xié)議、主機和端口號的完整URL,如果只想獲取相對路徑,可以使用request.getRequestURI()
和request.getContextPath()
來拼接。