老师你好,不好意思,我想问一个之前遇到的遗留的问题,一直没找到答案。

来源:4-5 店铺注册之Service层的实现

慕斯卡6955199

2018-04-15

在4.5节关于ImageUtil这个类的

http://img.mukewang.com/szimg/5ad2eff60001657910000394.jpg

http://img.mukewang.com/szimg/5ad2eff60001868f10000435.jpg

为什么数字的时候会成功而英文的时候会失败,想了好久还是没想通,还望老师多多指教。

写回答

4回答

翔仔

2018-04-15

同学好,basepath的获取路径和同学的配置有关,所以到2.0之后我们已不建议使用basepath,取而代之的是图片的绝对路径,这样就不会出错了:)

0
2
翔仔
回复
慕斯卡6955199
Thread.currentThread().getContextClassLoader().getResource("").getPath()会获取你当前线程执行的执行文件地址,但是有时候会在前面有个/不太方便,这个跟配置有关,同学可以点到里面去看看。我们tomcat发布的时候会把项目发布到一个跟项目根目录不一样的路径,具体可以看console的启动信息,那个才是真正的项目路径
2018-04-15
共2条回复

慕斯卡6955199

提问者

2018-04-15

//img.mukewang.com/szimg/5ad315280001987d10000452.jpg

老师是这个原因?_?why

0
0

慕斯卡6955199

提问者

2018-04-15

原因是它读取的不是resources下面的资源而是定死的绝对路径。但是我还有点疑问,

private static String basePath = Thread.currentThread().getContextClassLoader().getResource("").getPath();这段代码得到的是我的E盘下的路径:ImageUtil-basePath is :/E:/SchoolO2O/out/test/classes/  而不是resources下面的资源。这一点还望老师指点一下。

0
0

慕斯卡6955199

提问者

2018-04-15

老师,我仔细看了下代码,已经知道原因了,

0
0

Java双版本(SSM到SpringBoot)校园商铺全栈开发

SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需

5113 学习 · 8144 问题

查看课程