欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

获取路径

程序员文章站 2022-07-04 10:02:40
...
获取路径的方法:


1、在java类中获取路径(com.zhanggm.Test.java)

// 方式1,通过classZLoader获取路径,参数必须是""。
this.getClass().getClassLoader().getResource("");
// 结果为:“file:/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/”,类型是java.net.URL。
this.getClass().getClassLoader().getResource("").getPath();
// 结果为:“/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/”,类型是String。

// 方式2,直接获取,参数可以随意指定,""获取当前类所在的路径、"/"获取根路径(即.../classes/)、"/xx/xx"、"/xx/xx/"等
this.getClass().getResource("").getPath();
// 结果为:“/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/com/zhanggm/”
this.getClass().getResource("/").getPath();
// 结果为:“/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/”
this.getClass().getResource("/com").getPath();
// 结果为:“/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/com”
this.getClass().getResource("/com/").getPath();
// 结果为:“/D:/workspace/strutsTest/WebRoot/WEB-INF/classes/com/”
this.getClass().getResource("com").getPath();
// 结果为:“null”
this.getClass().getResource("com/").getPath();
// 结果为:“null”
this.getClass().getResource("/zhanggm").getPath();
// 结果为:“null”




2、通过 request 获取路径

String absolutePath= request.getRealPath("/");
// 结果为:“/D:/workspace/strutsTest/WebRoot/”,即获取是本地的绝对路径,WEB-INF所在的目录。这个路径可以用来存放文件。

String contextPath  = request.getContextPath();
// 结果为:“1、有项目名:"/xxPojectName",2、没有项目名:""”






3、在 struts2 中获取路径

String absolutePath = org.apache.struts2.ServletActionContext.getServletContext().getRealPath("/upload/");
// 结果为:“/D:/workspace/strutsTest/WebRoot/upload/”,即获取是本地的绝对路径。这个路径可以用来存放文件。




4、在 spring 中获取路径

/**
     * 获取应用的路径
     *
     * @return 应用的路径
     */
    protected String getAppPath() {
        org.springframework.web.context.WebApplicationContext webApplicationContext = org.springframework.web.context.ContextLoader.getCurrentWebApplicationContext();
        javax.servlet.ServletContext servletContext = webApplicationContext.getServletContext();
        return servletContext.getContextPath();
    }

相关标签: 获取路径