获取当前所在的项目的WebRoot根路径的方法

来源:互联网 发布:wap淘宝流量和手淘流量 编辑:程序博客网 时间:2024/05/19 09:40
/**
     * 获取当前所在的项目的WebRoot根路径
     * @return
     */
    private String getWebInfPath(){  
        URL url = getClass().getProtectionDomain().getCodeSource().getLocation();  
        String path = url.toString();  
        int index = path.indexOf("WEB-INF");  
          
        if(index == -1){  
            index = path.indexOf("classes");  
        }  
          
        if(index == -1){  
            index = path.indexOf("bin");  
        }  
          
        path = path.substring(0, index);  
          
        if(path.startsWith("zip")){//当class文件在war中时,此时返回zip:D:/...这样的路径  
            path = path.substring(4);  
        }else if(path.startsWith("file")){//当class文件在class文件中时,此时返回file:/D:/...这样的路径  
            path = path.substring(6);  
        }else if(path.startsWith("jar")){//当class文件在jar文件里面时,此时返回jar:file:/D:/...这样的路径  
            path = path.substring(10);   
        }  
        try {  
            path =  URLDecoder.decode(path, "UTF-8");  
        } catch (UnsupportedEncodingException e) {  
            e.printStackTrace();  
        }  
          
        return path;  
    }  
原创粉丝点击