关于线程问题
private static String basePath=Thread.currentThread().getContextClassLoader().getResource("").getPath();
这个能依次解释一下吗?还有无法理解线程。为什么说是使用了线程呢?
正在回答
同学你好,还可以通过这样的方式获取到,比如:
private static String basePath = Thread.currentThread().getContextClassLoader().getResource("").getPath(); private static String basePath1 = ImageUtil.class.getResource("/").getPath();
如上所示,这两个操作都可以动态获取项目发布后的地址,这只是一个方法,现在会用就可以。
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
同学你好,1、对于这段代码,同学可以参考如下内容来理解:
Thread.currentThread()-->返回当前执行的线程内容。
getContextClassLoader();-->当前线程的类加载器,对应Thread.currentThread().getContextClassLoader();就是获取当前上下文的类加载器。
getResource("")-->获取资源文件的路径.
综上所述,Thread.currentThread().getContextClassLoader().getResource("") 得到的是当前ClassPath的绝对URI路径。
2、如上所示,每一个调用ImageUtil、basePath时,都会由调用者的线程对象来获取到对应的URI路径。
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
- 参与学习 人
- 提交作业 323 份
- 解答问题 8263 个
本阶段将带你学习主流框架SSM,以及SpringBoot ,打通成为Java工程师的最后一公里!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星