今天是学校机房的服务器上对之前的一个网站升级时发现了一个bug,我自己的机器上用的tomcat8,机房上是tomcat7,结果一运行就开始报找不到文件,最后发现是文件分隔符的问题

原来在代码中涉及到路径的写法是request.getSession().getServletContext().getRealPath("/WEB-INF/"),总是File Not Found.于是修改为request.getSession().getServletContext().getRealPath("/") +"WEB-INF"+"/",重新编译运行后正常,很奇葩的问题下午抽个时间又对request.getSession().getServletContext().getRealPath()进行了一番测试,发现即使使用File.separator也没用,注意第5行结果

 System.out.println(request.getSession().getServletContext().getRealPath(""));   G:\apache-tomcat-8.5.24\webapps\servlet\
System.out.println(request.getSession().getServletContext().getRealPath("/")); G:\apache-tomcat-8.5.24\webapps\servlet\
System.out.println(request.getSession().getServletContext().getRealPath(File.separator)); G:\apache-tomcat-8.5.24\webapps\servlet
System.out.println(request.getSession().getServletContext().getRealPath(File.separator+ "WEB-INF")); G:\apache-tomcat-8.5.24\webapps\servlet\WEB-INF
System.out.println(request.getSession().getServletContext().getRealPath(File.separator + "WEB-INF" + File.separator)); G:\apache-tomcat-8.5.24\webapps\servlet\WEB-INF
System.out.println(request.getSession().getServletContext().getRealPath("/WEB-INF/"));G:\apache-tomcat-8.5.24\webapps\servlet\WEB-INF\

推荐写法request.getSession().getServletContext().getRealPath("/") + 你的路径

最新文章

  1. Copy-On-Write容器
  2. iOS音乐播放器相关
  3. Oracle PL/SQL高级应用 游标
  4. Delphi 7使用自定义图标关联文件类型
  5. Codevs 3729==洛谷P1941 飞扬的小鸟
  6. dom三个事件
  7. 最近很火的携程Java 工程师的一道面向对象面试题
  8. 给WEB初学者一些有效率的建议
  9. C#接口的简单创建及其用法
  10. Spark源码编译,官网学习
  11. Hadoop记录-hdfs转载
  12. 张钹院士:场景是当前AI产业化最大问题
  13. SpringMVC之编程式校验
  14. rman备份恢复命令之switch
  15. mybatis学习笔记(六) -- maven+spring+mybatis从零开始搭建整合详细过程(下)
  16. testng入门教程3用TestNG执行case的顺序
  17. 20145101《Java程序设计》第6周学习总结
  18. JavaScript数据结构-8.双向链表
  19. 在阅读sqlmap源码时学到的知识--检查运行环境
  20. cpio -H newc参数详解

热门文章

  1. 2.JPA学习总结
  2. Android 迭代器 Iteraor迭代器以及foreach的使用
  3. 编程一一C语言的问题,cpu中的专用寄存器
  4. javascript中的this指向问题总结
  5. Javascript和jquery事件-鼠标移入移出事件
  6. 【Codeforces Round #445 (Div. 2) A】ACM ICPC
  7. 动态规划求解序列问题(LIS、JLIS)
  8. Altium Designer如何重命名文件
  9. python使用matplotlib画图
  10. pstack.sh 改进版