在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。

另:在Jsp,Servlet,Java中详细获得路径的方法!

1.jsp中取得路径:

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:request.getRequestURI()
结果:/TEST/test.jsp
(2)得到工程名:request.getContextPath()
结果:/TEST
(3)得到当前页面所在目录下全名称:request.getServletPath()
结果:如果页面在jsp目录下 /TEST/jsp/test.jsp
(4)得到页面所在服务器的全路径:application.getRealPath("页面.jsp")
结果:D:\resin\webapps\TEST\test.jsp
(5)得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
结果:D:\resin\webapps\TEST

2.在类中取得路径:

(1)类的绝对路径:Class.class.getClass().getResource("/").getPath()
结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路径:System.getProperty("user.dir")
结果:D:\TEST

3.在Servlet中取得路径:

(1)得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。
结果:E:\Tomcat\webapps\TEST
(2)得到IE地址栏地址:request.getRequestURL()
结果:http://localhost:8080/TEST/test
(3)得到相对地址:request.getRequestURI()
结果:/TEST/test

<%
String path = request.getContextPath();//
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
//basePath=http://localhost:8080/TEST
%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
pageContext.setAttribute("basePath",basePath);
%>
<c:set var="proPath" value="${pageContext.request.contextPath}" /> 获取当前项目名称
<c:set var="basePath" value="${basePath}" />获取当前项目的全路径到项目的名称即http://localhost:8080/TEST
---------------------
作者:tEnshiYang
来源:CSDN
原文:https://blog.csdn.net/qq_34445857/article/details/79223526
版权声明:本文为博主原创文章,转载请附上博文链接!

最新文章

  1. MVVM开发模式简单实例MVVM Demo【续】
  2. 关于SAX
  3. 比CMD更强大的命令行WMIC
  4. vs文件属性(生成操作)各选项功能(发布Web项目时使用)
  5. jquery 农历日历 可自适应
  6. Scalaz(0) - 写在前面
  7. cocos2dx游戏开发——微信打飞机学习笔记(二)——游戏框架
  8. IOS 类别与扩展的区别 (category &amp; extensions)
  9. Unity3D入门之JavaScript动态创建对象
  10. oracle日记
  11. 用DriverBackUp备份了文件 装好系统后怎么把备份的驱动文件还原
  12. react-router 参数获取
  13. 在阿里云上搭建自己的git服务器
  14. python实战学习之matplotlib绘图续
  15. openstack-虚拟化模型
  16. python学习笔记(4)-基本数据类型-数字类型及操作
  17. php判断文件夹是不是存在
  18. Dist
  19. Python学习---装饰器/迭代器/生成器的学习【all】
  20. dADas

热门文章

  1. &quot;cni0&quot; already has an IP address different from 10.244.2.1/24。 Error while adding to cni network: failed to allocate for range 0: no IP addresses available in range set: 10.244.2.1-10.244.2.254
  2. 定时任务起的java进程没有释放导致oracle的问题not availavle &amp; out of memory
  3. Python配置工具类ConfigParser使用
  4. 一个漂亮的lazarus做的pagecontrol
  5. 当前页面刷新和动态添加控件的jquery事件绑定on
  6. Unix和Windows文件格式转化
  7. linux fedora 的备份小技巧
  8. spring bean 生命周期和 ? 作用域? spirng bean 相互依赖? jvm oom ? jvm 监控工具? ThreadLocal 原理
  9. activiti 清库脚本(转)
  10. Web Api 2 认证与授权 2