String filePath = request.getSession().getServletContext().getRealPath("/");

请问这句话返回的路径是什么,解释下getRealPath("/")函数中的"/"表示什么意思,谢谢。... 请问这句话返回的路径是什么,解释下getRealPath("/")函数中的"/"表示什么意思,谢谢。 展开
 我来答
wwclovexp
推荐于2018-02-27 · TA获得超过250个赞
知道小有建树答主
回答量:111
采纳率:0%
帮助的人:98.3万
展开全部
request.getSession().getServletContext() 获取的是Servlet容器对象,相当于tomcat容器了。getRealPath("/") 获取实际路径,“/”指代项目根目录,所以代码返回的是项目在容器中的实际发布运行的根路径如:I:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\UMPWeb_20131230\
记忆e偶尔雨
高粉答主

2018-04-05 · 醉心答题,欢迎关注
知道大有可为答主
回答量:600
采纳率:89%
帮助的人:42.6万
展开全部

1、表示获得服务器的绝对路径的意思。

2、getRealPath问题:

String filename=request.getRealPath(filename)。

信息:warning: [deprecation] getRealPath(java.lang.String) in javax.servlet.ServletRequest has been deprecated。

解决:这个getRealPath方法已经不建议使用了,参看request.getRealPath的java doc,Deprecated. As of Version 2.1 of the Java Servlet API, use,ServletContext.getRealPath(java.lang.String) instead.而在servlet中使用getServletContext.getRealPath()这个方法受到war 和non-war的影响,以及不同app server实现的影响,运气好的话,你常常会得到null,比如你在weblogic上部署war文件,又调用这个方法。推荐ServletContext.getResourceAsStream


3、关于serveletContext.getRealPath返回NULL和不同的app server返回不同的结果:

有几个配置文本配置文件(是一些报表的模板),放在WEB-INF下面的config目录下,程序中是这样得到这个config的实际路径的:先用 serveletContext.getRealPath得到根路径,tomcat中比如是c:\tomcat\webapp\test,然后我加上 "/WEB-INF/config/aa.config",这样得到文件的path然后进行读入,应用在tomcat上跑是ok的,后来将war放到weblogic上,出错,原因是:在weblogic上用getRealPath得到的是myserver\stage\_appsdir_test_war\test.war!\WEB-INF\config....这样的路径,于是一直报FileNotFoundException。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式