总结:

方法1

WebApplicationContext webApplicationContext = ContextLoader.getCurrentWebApplicationContext();
ServletContext servletContext = webApplicationContext.getServletContext();
String realPath = servletContext.getRealPath(File.separator);//G:\ty\tomcat\tomcat-7080\webapps\crm-timer

方法2:

ClassLoader classLoader = this.getClass().getClassLoader();
URL resource1 = classLoader.getResource("");
resource1.getPath();///G:/ty/tomcat/tomcat-7080/webapps/crm-timer/WEB-INF/classes/ //或者
URL resource = classLoader.getResource("/");
String path = resource.getPath();///G:/ty/tomcat/tomcat-7080/webapps/crm-timer/WEB-INF/classes/

注意:上面的方法除了 URL resource1 = classLoader.getResource(""); 外,都需要在tomcat中启动项目后才会有正常值,在junit或者main方法测试的时候都是会报错的,即使getResource("")不报错,返回的地址是这样:G:/ty/wkty2/crmCust-parent/crm-timer/bin/main/

。。。。。。参考如下。。。。。。。

方法1:

转:

spring中获取当前项目的真实路径

2018年12月31日 22:12:25 小小踏浪神行 阅读数:420
 

如果为体现项目的层次感,当我们使用request的时候,一般都是在控制层中使用的,没有必要将request也传递到service使用,所以首先是讲一下在controller获取当前的项目的绝对路径

    public Message<Object> uploadImgsFile(HttpServletRequest request) {
//
String realPath = request.getSession().getServletContext().getRealPath(File.separator);
System.out.println(realPath);
//
String realPath2 = request.getServletContext().getRealPath(File.separator);
System.out.println(realPath2); return null;
}

如果当前想要获取当前项目的绝对路径,而此时又不在controller,同时又不想传递request的参数到service层,可以这样操作

  1.  
     
     
        //代码片段
    //现获取当前的路径
    WebApplicationContext webApplicationContext = ContextLoader.getCurrentWebApplicationContext();
    ServletContext servletContext = webApplicationContext.getServletContext();
    String realPath = servletContext.getRealPath(File.separator);
    System.out.println(realPath);

经过上面的操作可以获取项目的路径,以此来方便自己项目的需求

。。。。。。。。。。。。。。。。

方法2:

转:

在java类中获取WEB-INF路径

2016.04.29 14:36* 字数 189 阅读 4699评论 0喜欢 5

把java项目部署到tomcat中以后,类文件的路径都在“apache-tomcat-7.0.69\webapps\APP\WEB-INF\classes”中,如果我们需要在某个java类中获取WEB-INF下的某些资源,例如现在我需要在WEB-INF下的templates文件夹下的模板资源

Paste_Image.png

就需要在java文件中这样获取classes目录,然后转到templates目录下。

private static String templatePath = TemplateFactory.class.getClassLoader().getResource("/").getPath().replace("classes", "templates");

其中TemplateFactory是我的Java类名,

TemplateFactory.class.getClassLoader().getResource("/").getPath()

是获取到classes文件夹下的路径,就是apache-tomcat-7.0.69\webapps\APP\WEB-INF\classes,

然后可以把classes替换为我们想要得到的文件夹名字。

参考:web项目中各种路径的获取

spring中获取当前项目的真实路径的更多相关文章

  1. JavaScript中获取当前项目的绝对路径

    近期在做JavaWeb项目相关的东西,差点儿每天都遇到非常多问题,主要是由于自己对JavaWeb方面的知识不是非常清楚,尽量把自己在项目中遇到的问题都记录下来,方便以后查阅. 在我们的项目中有这种须要 ...

  2. Spring中获取web项目的根目录

    spring 在 org.springframework.web.util 包中提供了几个特殊用途的 Servlet 监听器,正确地使用它们可以完成一些特定需求的功能; WebAppRootListe ...

  3. controller中获取当前项目物理绝对路径

    用HttpServletRequest request获取 request.getSession().getServletContext().getRealPath(""); 上面 ...

  4. Spring MVC中获取当前项目的路径

    Spring MVC中获取当前项目的路径 在web.xml中加入以下内容 <!--获取项目路径--> <context-param> <param-name>web ...

  5. spring中获取dao或对象中方法的实例化对象

    spring中获取dao的中方法的实例化对象: //获取应用上下文对象 ApplicationContext ctx = new ClassPathXmlApplicationContext(&quo ...

  6. 获取 web 项目的绝对路径

    获取 web 项目的绝对路径 <% String path = request.getContextPath(); String basePath = request.getScheme()+& ...

  7. IOS中获取各个文件的目录路径的方法和NSFileManager类

    转自:http://blog.sina.com.cn/s/blog_5fb39f910101di92.html IOS中获取各种文件的目录路径的方法 iphone沙箱模型的有四个文件夹,分别是什么,永 ...

  8. Spring中获取被代理的对象

    目录 Spring中获取被代理的对象 获取Spring被代理对象什么时候可能会用到? Spring中获取被代理的对象 Spring中获取被代理的对象 ### 获取Spring被代理对象的JAVA工具类 ...

  9. 【poi】用POI新建一个xlsx文件【或者说将数据存入到xlsx中】/【将数据从xlsx中获取到项目中】

    第一部分:写入xlsx中 使用POI创建一个xlsx文件: 项目结构如下: 具体使用的POI中的 XSSFWorkbook   xlsx对象 Sheet 工作簿对象 Row 行对象 Cell  单元格 ...

随机推荐

  1. python之路--递归, 二分法

    一 . 递归 自己调用自己, 递归的入口(参数)  和  出口(return),  树形结构的遍历. def func(): print("我是递归") func() func() ...

  2. Python rsa公私钥生成 rsa公钥加解密(分段加解密)-私钥加签验签实战

    一般现在的SAAS服务提供现在的sdk或api对接服务都涉及到一个身份验证和数据加密的问题.一般现在普遍的做法就是配置使用非对称加密的方式来解决这个问题,你持有SAAS公司的公钥,SAAS公司持有你的 ...

  3. CSS单元的位置和层次-div标签

    我们都知道,在网页上利用HTML定位文字和图象是一件“令人心痛”的事情.我们必须使用表格标签和隐式GIF图象,即使这样也不能保证定位的精确,因为浏览器和操作平台的不同会使显示的结果发生变化. 而CSS ...

  4. js对json解析获取对应属性的值,JSON.stringify()和JSON.parse()

    JSON.stringify() 该方法,将一个JSON对象转化为字符串string JSON.parse() 该方法,将一个字符串转化为JSON对象object 对于JSON对象,获取其对应键值 可 ...

  5. Git官方推荐用书

    用Git看了N多的Blog, 乱七八糟. 官方的推荐用书写得最好,最权威.还可以下载pdf.记录一笔. https://git-scm.com/book/zh/v2/

  6. 微信小程序flex佈局

    聲明:display:flex 換行flex-wrap:flex-wrap:nowrap(不換行).wrap(換行).wrap-reserve(第一行在下面): 主軸對齊(橫向對齊)justify-c ...

  7. 安装mysql zip5.7版--安裝

    一直以来都习惯了使用MySQL安装文件(.exe),今天下载了一个.zip版本的MySQL,安装过程中遇到了一些问题,如下: 1.在MySQL官网上(http://dev.mysql.com/down ...

  8. Running Web API using Docker and Kubernetes

    Context As companies are continuously seeking ways to become more Agile and embracing DevOps culture ...

  9. Android PowerManager电源管理(Android N )

    ./frameworks/base/core/java/android/os/PowerManager.java该类提供给Application访问电源相关接口. 它的内部类WakeLock是定义的唤 ...

  10. Python图形库Turtle

    画笔绘制状态函数 函数 描述 pendown() 放下画笔 penup() 提起画笔,与pendown()配合使用 pensize(width) 设置画笔线条的粗细为指定大小 画笔运动函数 函数 描述 ...