在J2EE开发中不免会遇到取路径的时候,而Web开发时有相对路径和绝对路径之分,而且还有web路径和真实路径的区别,面对这样的问题时,我种是记不清应该调用哪些方法,所以记在blog中备察。
准备工作:
我的网站访问路径是:http://www.chho.com/test/index.do
网站的物理存储路径是:c:/chhoweb/root
记录开始:
l 在action中调用request.getContextPath(),取得的会是域名后面的虚拟路径名,上例就是:[/test]
l 在action中调用servlet.getServletContext().getRealPath("test.txt"),取得的会是这个网站的真实路径加上参数中的文件名,即c:/chhoweb/root/test.txt,并不查找这个文件是否真实存在,只是简单的取得此do的物理路径并加上了“test.txt”的字串。注:测试是在tomcat5.0上做的,web容器不同可能会导致getRealPath返回不同的结果。