SSH 上传图片,如何获取项目的真实路径?

次奥。搞半天搞不定。网上都说这个:System.out.println("getContextPath:"+ServletActionContext.getServlet... 次奥。搞半天搞不定。
网上都说这个:
System.out.println("getContextPath : " + ServletActionContext.getServletContext().getRealPath("/"));
mb,我在Action里打印的结果是个临时文件夹:getContextPath : D:\我的文档\Eclipse-indigo\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\SIGS\
SIGS是我的项目名字。
项目路径是:D:\我的文档\Eclipse-indigo\workspace\SIGS
上传肯定是要 传到D:\我的文档\Eclipse-indigo\workspace\SIGS\pages\image
谁来教教我怎么获取这个项目路径。
展开
 我来答
青鸟中关村专家
2015-08-21 · 知道合伙人软件行家
青鸟中关村专家
知道合伙人软件行家
采纳数:1734 获赞数:8440
就职于北大青鸟中关村,自2004年踏入北大青鸟这个行业,已经有11年工作经验和8年的培训经验,寓教于乐

向TA提问 私信TA
展开全部

    使用Struts2的ServletActionContext可以得到项目的真实路径

    假如,项目名称为BookSystem,部署到Tomcat的webapps目录下,则

String path=ServletActionContext.getServletContext().getRealPath("/");

path取出的路径为:D:\apache-tomcat-7.0.16\webapps\BookSystem

即:BookSystem项目部署到服务器的完整路径


取出上传路径,并保证路径存在的代码如下:

Action类中部分代码:
//取出当前项目部署在服务器上的路径
String path=ServletActionContext.getServletContext().getRealPath("/");
//构建当前项目下的存放目录
String filePath=path+"images";
//构建文件对象
File folder=new File(filePath);
//检测文件夹是否存在,如果不存在,则新建images目录
if(!folder.exists()){
    folder.mkdir();
}
ysjiang2021
2013-09-13 · 超过21用户采纳过TA的回答
知道答主
回答量:105
采纳率:0%
帮助的人:52.1万
展开全部
Eclipse自动将项目部署在你的D:\我的文档\Eclipse-indigo\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps路径下,然后获取的路径当然是相对于这个的,是以部署的为准,并不是你的项目源码。你的描述表明程序没有任何问题。
追问
真的是耶。
还有个问题,我的项目是 Svn import来的,虽然地址栏是localhost,但读取的东西好像是svn服务器上的,所以上传在本地的话网页无法显示。
这个怎么破?
追答
这个没研究过,不好意思
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
haogangshang
2013-09-13
知道答主
回答量:7
采纳率:0%
帮助的人:1万
展开全部
通过sturts注入就可以了啊 在web.xml里配置action的pram,然后提供set和get方法就行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-09-13
展开全部
../(图片包)/(图片名) 如: ../images/11.jpg
追问
图片都没上传好呢,怎么会有图片名……
图片包是什么东西?
ServletActionContext.getServletContext().getRealPath("../images/")
这样写不对,还是在 临时的虚拟 路径里。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式