javaweb中 ServletActionContext.getServletContext().getRealPath("")获得服务器路径

request.getRealPath("")        就是取得你当前运行文件在服务器上的绝对路径.

request.getRealPath("")灵活性太差,只能得到当前文件绝对路径,不能在当前文件下获得其他文件的绝对路径

不是工程的物理路径封装在Session里 是工程的路径被封装在了ServletContext中
只是我们可以通过session对象获得这个ServletContext

获得ServletContext的方法:
1.FilterConfig的getServletContext();

2.ServletConfig的getServletContext();

3.ServletContextEvent的getServletContext()

4.HttpSession的getServletContext();
 
 
在目前最新的Java Servlet API
2.1版本中,不赞成使用request.getRealPath()这个方法,使用ServletContext.getRealPath(java.lang.String)代替它。

在Servlet
2.4文档中对ServletContext.getRealPath(java.lang.String)是这样描述的:
返回一个字符串,包含一个给定虚拟路径的真实路径,如果转换错误,则返回null。例如,虚拟路径“/index.html”不管在服务器文件系统上具有
怎样的真实路径,使用“/index.html”总可以找到它。返回的真实路径使用了相近于servlet容器(servlet
container)所在计算机或操作系统的格式,包含了适当的路径分隔符。如果servlet容器无法转换则将返回null.

request对象位于javax.servlet.http.HttpServletRequest包中,但在java
API中找不到
网上资料显示在J2EE API或Tomcat
API中可找到。
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值