JAVA中的各种路径问题

工程结构

在web环境中(servlet,controller)取java的路径问题。
JAVA中的各种路径问题_第1张图片

取web服务器上的文件路径(如:http://。。。)

String url = request.getScheme() + "://" + request.getServerName() 
                + ":" + request.getServerPort() + request.getContextPath()
                + "/templates";

得到的路径
http://localhost:8080/freeMarkerPrj/templates

取web服务器硬盘物理路径(如:d:\。。。)

    private static String getSysPath() {
        String path = Thread.currentThread().getContextClassLoader()
                .getResource("").toString();
        String temp = path.replaceFirst("file:/", "").replaceFirst(
                "WEB-INF/classes/", "");
        String separator = System.getProperty("file.separator");
        String resultPath = temp.replaceAll("/", separator + separator);
        return resultPath+"/templates";
    }

得到的路径D:\newEnvierment\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\freeMarkerPrj\templates

你可能感兴趣的:(JAVA中的各种路径问题)