<%=request.getcontextpath()%>是解决相对路径的问题,可返回站点的根路径。
<a href="<%=request.getcontextpath()%>/xxx.jsp"> //这样获得的是绝对路径
<a href="xxx.jsp"> //这样获得的是相对路径
<a href="<%=request.getcontextpath()%>/xxxx.jsp"> 能够更有效的防治连接的失效。
request.getcontextpath()得到的是项目的名字,如果项目为根目录,则得到一个"",即空的字条串, 如果项目为dzjc,<%=request.getcontextpath()% >/ 将得到dzjc/,服务器端的路径则会自动加上, <a href="xxx.jsp"> 应该就是指当前路径下的这个xxx.jsp页面,有时候也可以在head里设置html:base来解决路径的问题,不过用的最多的还是request.getcontextpath。
如果想得到工程文件的实际物理路径,可通过:<%=request.getrealpath("/")%>,这样页面就会输出:d:\web\
现在request.getrealpath("") 这个方法已经不推荐使用了,可以使用
this.getservletcontext().getrealpath("/") 得到工程文件的实际物理路径,也就是绝对地址获得uri路径的方法这个方法是
httpservletrequest的装饰类httpservletrequestwrapper中方法(运用的是装饰模式)string url=request.getrequesturi();
system.out.println(url); //输出 /2/loginservlet 项目名称+当前执行页面的url
以上这篇jsp中获得路径的两种方法和获得url路径的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。