首页 > 代码库 > request.getContextPath()的功能

request.getContextPath()的功能

<%
String contextPath = request.getContextPath();  // 得到项目的名字
com.chint.until.SessionInfo sessionInfo = (com.chint.until.SessionInfo) session.getAttribute("sessionInfo");
%>

在JSP中有html、js、java这三种语言,其中的java,被称之为java代码片段,<%  java代码片段 %>,  而<% session.getAttribute("sessionInfo") %> 称之为java表达式。


<%=request.getContextPath()%>  是为了解决相对路径的问题,可返回站点的根路径。

request.getContextPath() 应该是得到项目的名字,如果项目为根目录,则得到一个“”,即空的字条串。如果项目为abc,<%=request.getContextPath()%> 将得到abc,服务器端的路径会自动加上,<a href=http://www.mamicode.com/"XXX.jsp"> 是指当前路径下的这个xxx.jsp页面,有时候也可以在head里设置html:base来解决路径的问题,不过用的最多的还是reques.getContextPath。


session.getAttribute("sessionName") 的功能:用来得到对应名称的session值,即得到object对象。加(com.chint.until.SessionInfo)的作用是强制转换成com.chint.until.SessionInfo类型。

常用到的还有一个session.setAttribute("sessionName",Object)方法:该方法的功能是用来设置session值的,sessionName是名称,object是要保存的对象。


<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>

getContexPath();   得到当前应用的根目录

getScheme();         它返回当前请求所使用的协议,一般的应用返回“http”,对于ssl则返回“https”

getServerName();  获取服务器名字,如果是在本地的话就是localhost

getServerPort();      获得服务器的端口号