关于web工程中java类如何获取webapp路径下的文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于web工程中java类如何获取webapp路径下的文件相关的知识,希望对你有一定的参考价值。
第一步: 先获得classpath路径
String classpath = this.getClass().getResource("/").getPath().replaceFirst("/", "");这样子可以得到classpath路径,类似于:
F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/WEB-INF/classes/
然后把WEB-INF/classes截取就能获得WebAPP目录啦:
得到的结果就是:
F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/
通过这个路径你就能获取该文件夹下的所有文件啦
参考技术A session.getServletContext.getRealPath(fileName) 参考技术B 先通过 WEB 得到路径,再传给 java类 ~~~~~~普通JAVA类 如何获取,WEB项目的根路径
这是我写的个 WEB service (删除图片功能) 在这里是一个从C#,调用service 的问题,所以用request 和一些对象不能获取到项目的绝对路径,
不知道该怎么办才行,谢谢大家帮助我下
/**
* 获取项目classpath目录的绝对路径
*
* @return classes目录的绝对路径<br/>
* file:/F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/
* */
public static URL getAbsolutePathWithClass()
return WebPath.class.getResource("/");
/**
* 获取项目classPath目录下的指定目录的绝对路径
*
* @param path
* classes目录下的指定目录.比如:/com/
* @return file:/F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/com/
* */
public static URL getAbsolutePathWithClass(String path)
return WebPath.class.getResource(path);
/**
* 获取指定类文件的所在目录的绝对路径
*
* @param clazz
* 类
* @return 类文件的绝对路径.例如:<br/> 包com.Aries.Util.Web下的Main.java类.<br/>
* 路径为:file:/
* F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/com/Aries/Util/Web/
* */
public static URL getAbsolutePathWithClass(Class clazz)
return clazz.getResource("");
参考资料:http://zhidao.baidu.com/question/142445629.html
参考技术A 在servlet中String realPath = ServletActionContext.getServletContext() .getRealPath(Constants.dbXmlFileName);public static final String dbXmlFileName = "/WEB-INF/classes/jdbc.properties";
貌似是这样的打印结果是跟路径+dbXmlFileName
在jsp中<%=request.getContextPath()%> 参考技术B request.getSession().getServletContext().getRealPath("/");//获取web项目的路径
this.getClass().getResource("/").getPath()//获取类的当前目录 参考技术C 不太懂
不过我觉得是不是应该在XML里配呀
以上是关于关于web工程中java类如何获取webapp路径下的文件的主要内容,如果未能解决你的问题,请参考以下文章
Java web项目,在.java程序中如何获取webapp路径?