EL表达式获取地址栏地址以及jsp如何获取服务器信息(转载)

转载:http://blog.csdn.net/zzq900503/article/details/51073923

获取浏览器地址栏输入的地址

EL表达式获取

 

[java] view plain copy
 
  1. ${requestScope['javax.servlet.forward.request_uri']}    (自己加的评论searain)注意它与${pageContext.request.requestURL} 的区别,如果请求被转发,那么${pageContext.request.requestURL} 获取的是请求的原来的地址,不是地址栏显示的地址。但是${requestScope['javax.servlet.forward.request_uri']} 是请求转发后地址栏的地址

或者

 

 

[html] view plain copy
 
  1. ${pageContext.request.getAttribute("javax.servlet.forward.request_uri")}  




 

 

java脚本获取

 

[java] view plain copy
 
  1. <%   
  2. String url=request.getAttribute("javax.servlet.forward.request_uri").toString();  
  3.   
  4. %>  
  5. <%=url%>  



 

 

ps注意事项

Tomcat和Was7对servlet标准的实现不尽相同的。差异很大,导致最终结果也有些差异了。本文中要说的request.getAttribute("javax.servlet.forward.request_uri")调用结果就是其中的一个差异。
在Tomcat环境下javax.servlet.forward.request_uri存放的是当前请求路径,但在was7下存放的却是上一个请求的路径。

 

 

 

 

获取浏览器地址栏输入地址的请求参数

例如:http://localhost:8080/test/hello?name=joe获取name

EL表达式获取

 

[java] view plain copy
 
  1. ${param.name}  



 

java脚本获取

 

[java] view plain copy
 
  1. <%   
  2. String name = request.getParameter("name");  
  3. %>   
  4. <%=name%>   



 

 

 

 

 

获取当前页面绝对路径

java脚本

 

 

[java] view plain copy
 
  1. <%   
  2. String path = request.getContextPath();   
  3. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";   
  4. String  url  =  "http://"  +  request.getServerName()  +  ":"  +  request.getServerPort()  +  request.getContextPath()+request.getServletPath().substring(0,request.getServletPath().lastIndexOf("/")+1);    
  5.   
  6. if(request.getQueryString()!=null)   
  7. {     
  8.     url+="?"+request.getQueryString();             
  9. }   
  10. System.out.println("path:"+path);   
  11. System.out.println("basePath:"+basePath);      
  12. System.out.println("URL:"+url);     
  13.   
  14. System.out.println("URL参数:"+request.getQueryString());    
  15. %>  

或者

 

 

[java] view plain copy
 
  1. String   url=request.getScheme()+"://";     
  2.   url+=request.getHeader("host");     
  3.   url+=request.getRequestURI();     
  4.   if(request.getQueryString()!=null)     
  5.       url+="?"+request.getQueryString();   



EL表达式

 

 

[html] view plain copy
 
  1. ${pageContext.request.requestURL}  



 

 

 

获取服务器的相关信息

EL表达式

 

[java] view plain copy
 
  1. ${pageContext.request}                  |取得请求对象<br>    
  2. ${pageContext.session}                  |取得session对象<br>    
  3. ${pageContext.request.queryString}      |取得请求的参数字符串<br>    
  4. ${pageContext.request.requestURL}       |取得请求的URL的服务器路径,但不包括请求之参数字符串<br>    
  5. ${pageContext.request.contextPath}      |服务的web application的名称<br>    
  6. ${pageContext.request.method}           |取得HTTP的方法(GET、POST)<br>    
  7. ${pageContext.request.protocol}         |取得使用的协议(HTTP/1.1、HTTP/1.0)<br>    
  8. ${pageContext.request.remoteUser}       |取得用户名称<br>    
  9. ${pageContext.session.new}              |判断session是否为新的,所谓新的session,表示刚由server产生而client尚未使用<br>    
  10. ${pageContext.session.id}               |取得session的ID<br>    
  11.     
  12. ${header["User-Agent"]}|用户浏览器的版本<br/>    
  13. ${header["Host"]}|IP<br/>    
  14. ${pageContext.request.remoteAddr }      |取得用户的IP地址<br>    
  15. ${pageContext.servletContext.serverInfo}|取得主机端的服务信息<br>    
  16. ${pageContext.request.serverPort}|端口信息<br>    
  17. ${pageContext.request.serverName}|服务器名称<br>    
  18. ${pageContext.request.remoteHost}|客户机名称<br>    



 

java脚本

 

[java] view plain copy
 
    1. <%    
    2.     
    3. String SERVER_NAME = request.getServerName();    
    4.     
    5. String SERVER_SOFTWARE = getServletContext().getServerInfo();    
    6.     
    7. String SERVER_PROTOCOL = request.getProtocol();    
    8.     
    9. Integer SERVER_PORT = request.getServerPort();    
    10.     
    11. String REQUEST_METHOD = request.getMethod();    
    12.     
    13. String PATH_INFO = request.getPathInfo();    
    14.     
    15. String PATH_TRANSLATED = request.getPathTranslated();    
    16.     
    17. String SCRIPT_NAME = request.getServletPath();    
    18.     
    19. String DOCUMENT_ROOT = request.getRealPath("/");    
    20.     
    21. String QUERY_STRING = request.getQueryString();    
    22.     
    23. String REMOTE_HOST = request.getRemoteHost();    
    24.     
    25. String REMOTE_ADDR = request.getRemoteAddr();    
    26.     
    27. String AUTH_TYPE = request.getAuthType();    
    28.     
    29. String REMOTE_USER = request.getRemoteUser();    
    30.     
    31. String CONTENT_TYPE = request.getContentType();    
    32.     
    33. Integer CONTENT_LENGTH = request.getContentLength();    
    34.     
    35. String HTTP_ACCEPT = request.getHeader("Accept");    
    36.     
    37. String HTTP_USER_AGENT = request.getHeader("User-Agent");    
    38.     
    39. String HTTP_REFERER = request.getHeader("Referer");    
    40.   
    41. %>  
posted @ 2018-01-29 14:11  searain  阅读(195)  评论(0)    收藏  举报