java web中读取文件,相对路径怎么写

java web中读取文件,相对路径怎么写,第1张

相对路径的话,可以先获取到当前文件的编译路径,之后在找到想找文件的路径的思路来实现。

举例:

XMLSclassgetClass()getResourceAsStream("/test/testtxt");

解释:XMLSclassgetClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。

备注:这个方法中后面的路径也可以通过截取的形式来进行路径获取,实现原理都是找到当前类路径,之后通过相对位置找到另外文件路径。

这其实就是 获得应用的根url,比如说你的应用的根路径是 >

你写个配置文件配置下这个路径,用spring注入进去,在生产环境和开发测试环境分别读取不就可以了吗,如果你嫌麻烦,那干脆在数据库中搞个表,专门存这些配置,再配合个缓存(比如redis),这样读取配置也没有什么压力,为啥一定要在程序中动态去获取呢,这样在不同环境不仅容易出问题,还不具有可控性。

用EL表达式就可以了

${pageContextrequestcontextPath}

这是取到项目的WebRoot目录

如果你的aajsp是直接创建在WebRoot下的

可以写成这样:${pageContextrequestcontextPath}/aajspaa=bb

把相关jsp文件首部

<%String path = requestgetContextPath();

String basePath = requestgetScheme()+"://"+requestgetServerName()+":"+requestgetServerPort()+path+"/";%>

以及 <base href="<%=basePath%>">代码删掉

改成pageEncoding="utf-8"

import os

# Build paths inside the project like this: ospathjoin(BASE_DIR, )

BASE_DIR = ospathdirname(ospathdirname(ospathabspath(__file__)))

可以参考django的方式。注意,若获取路径的文件位于项目根目录中,则需要剥掉一层ospathdirname :

import os

# Build paths inside the project like this: ospathjoin(BASE_DIR, )

BASE_DIR = ospathdirname(ospathabspath(__file__))

以上就是关于java web中读取文件,相对路径怎么写全部的内容,包括:java web中读取文件,相对路径怎么写、String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+pat、eclipse下获得项目的运行路径,例如:h_t_t_p:_/_/_localhost:8080等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9523855.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存