我遇到的情况是,因为部署到weblogic和tomcat,
但是,weblogic得不到servletContext,
因此改用以下方式获取:
Thread.currentThread().getContextClassLoader().getResource("").getPath();
这样,在两种服务器下得到的路径分别为:
tomcat下得到路径:/WEB-INF/classes/
weblogic:相应的domain根目录。。
而在各自取得的路径下使用mkdir()创建文件夹时,weblogic创建成功,tomcat创建不成功!
改用mkdirs(),两个服务器都创建成功了。
以下是网上找的解释,
-------------------------------------------------------------------------------------------------------
boolean mkdir()
创建此抽象路径名指定的目录。
boolean mkdirs()
创建此抽象路径名指定的目录,包括创建必需但不存在的父目录。
ps:摘自DOC,建议楼主去查查api去
-------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------
文档说的象天书! 我给点实际点的解释:
mkdir():只能创建一层目录.
如: File file = new File("c:/aa");
file.mkdir(); //这样可以在c:/下创建aa目录
假如有多层目录,则不能用mkdir创建:File file = new File("c:/aa/bb"); file.mkdir() //这样创建不了.
应该改为:
mkdirs():