SpringBoot打开resources目录下的文件操作
SpringBoot打开resources目录下的文件操作
背景
我想在SpringBoot项目中放入一个静态文件.json
文件。然后在SpringBoot项目内可以打开并读取此json文件。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fPPv8GCL-1634463168455)(C:\Users\dancerHoan\AppData\Roaming\Typora\typora-user-images\image-20211017172913980.png)]
Step One配置pom文件
在pom文件中 贴上如下:
意:让 maven 编译时把 .json文件放到 target 文件夹下的 classes 文件夹中
<build><resources><resource><directory>src/main/recourse</directory><includes><include>**/*.json</include></includes><filtering>true</filtering></resource></resources>
</build>
注:若你创建了SpringBoot项目,pom文件中会有<build>
标签,只需要将<resource>
贴入<build>
标签。
Step Two 通过**ClassPathResource
**类 读文件
String s;
InputStream inputStream = null;
ClassPathResource classPathResource = new ClassPathResource("static/myJson.json");
try {inputStream = classPathResource.getInputStream();String s1 = readStream(inputStream);// readStream方法 在下方System.out.println(s1);
} catch (IOException e) {e.printStackTrace();
}
Step Three 读取inputStream流 到String
输入InputStream
类型 返回String
类型
public static String readStream(InputStream in) {try {//<1>创建字节数组输出流,用来输出读取到的内容ByteArrayOutputStream baos = new ByteArrayOutputStream();//<2>创建缓存大小byte[] buffer = new byte[1024]; // 1KB//每次读取到内容的长度int len = -1;//<3>开始读取输入流中的内容while ((len = in.read(buffer)) != -1) { //当等于-1说明没有数据可以读取了baos.write(buffer, 0, len); //把读取到的内容写到输出流中}
//<4> 把字节数组转换为字符串String content = baos.toString();//<5>关闭输入流和输出流in.close();baos.close();//<6>返回字符串结果return content;} catch (Exception e) {e.printStackTrace();return e.getMessage();}}
参考博客:
[解决 java.io.FileNotFoundException: class path resource applicationContext.xml] cannot be opened because it does not exist - 南极石 - 博客园 (cnblogs.com)
极石 - 博客园 (cnblogs.com)](https://www.cnblogs.com/ditf/p/11529719.html)
SpringBoot打开resources目录下的文件操作相关推荐
- SpringBoot模块中,resources目录下各文件夹作用
文章目录 前言 1.public目录: 2.resources目录: 3.static目录: 4.templates目录: 5.src/main/resources目录(根目录): 6.META/IN ...
- 如何读取resources目录下的文件路径(九种方式)
前情提要 本文中提供了九种方式获取resources目录下文件的方式.其中打印文件的方法如下: /*** 根据文件路径读取文件内容** @param fileInPath* @throws IOExc ...
- classpath和读取resources目录下的文件
最近在springboot+maven的项目中去读取资源文件的时候,报了找不到文件的错误.由此展开了对maven项目编译前和编译后的目录结构的了解,以及对java的classpath的理解. 首先,由 ...
- java resources 目录_[Java] 在 jar 文件中读取 resources 目录下的文件
注意两点: 1. 将资源目录添加到 build path,确保该目录下的文件被拷贝到 jar 文件中. 2. jar 内部的东西,可以当作 stream 来读取,但不应该当作 file 来读取. 例子 ...
- javaweb(实用)-IDEA下resources目录下txt文件读取写入引发的项目后台路径问题总结
首先idea下 真实路径与项目原本路径对比: (文件操作之后idea内打开项目内的文件并没有任何变化,项目真实路径或者说编译后情况下的文件发生了变化) 项目中resources文件file.txt原本 ...
- Spring项目的resources目录下的文件读取
src/main/resources和src/test/resources下的资源读取方式 1. 一般maven会将spring工程编译到target文件夹下,/target/classes就是其根目 ...
- 九种方式,教你获取 resources 目录下的文件
方式一 主要核心方法是使用getResource和getPath方法,这里的getResource("")里面是空字符串 public void function1(String ...
- maven学习系列8----将resources目录下的文件打包到jar包外
maven默认情况下会把src/main/resources下的文件和class文件一起打到jar包内部,但是有很多场景下都需要把resources下的文件打包到jar包外面,这样修改resource ...
- VS工程目录下各文件的含义以及如何打开源文件进行编译
一.创建工程产生的各个文件都你知道是什么用的吗? 解决方案与工程 在这之前先了解一个概念:解决方案与工程. **解决方案(Solution):**一个大型项目的整体的工作环境: **工程 (Proje ...
最新文章
- 回顾 | 2018年十大AI新闻 中国继续占据主导优势
- JDK自带监控工具 jps、jinfo、jstat、jmap、jconsole
- 基本配置1-被忽悠进了CentOS 6
- 21 张让你代码能力突飞猛进的速查表(神经网络、线性代数、可视化等)
- 小米平板5系列获EEC认证:骁龙870加持 预装深度定制MIUI系统
- Visual Studio调试之避免单步跟踪调试模式
- imx6ull uboot移植
- 微信小程序之简易音乐播放器的实现
- 一篇网络流的好blog
- Largest Rectangle in a Histogram[]
- ACL技术,NAT技术,园区网组网
- 马甲线怎么画?如何画出好看的腹肌?
- Firefox浏览器版本66的下载链接
- Python列表、元组、字典相关练习题记录——第三天
- 个人建设网站流程解说,手把手教你如何在阿里云上搭建自己的网站
- IntellJ IDEA 基础之 常用快捷键的简单整理
- 提升精度 | 新的小样本学习算法提升物体识别精度(附论文地址)
- 电梯模拟 数据结构课设
- 固定docker容器IP方法
- 百度推广客户端下载地址
热门文章
- oppo怎么修改dns服务器地址,OPPO手机的WIFI设置里的DNS在哪
- Ubuntu18.04笔记本插入耳机没有声音 解决方案
- 清华毕业程序员国企干了14年,去应聘小公司,看到工资后愣了
- oracle11g在linux7的静默安装脚本
- 计算机一直重启无法进入系统怎么办,电脑无限蓝屏重启 电脑一直不断的重启怎么办...
- 前端页面开发浅谈:PC 端设计如何“完美”迁移到移动端?
- 关于部分手机默认获取权限问题
- 计算理论基础-1-FA有穷自动机与Pumping_Lemma泵定理
- 华为认证级别有哪些级别分类?考HCIP还是考HCIA?
- 作用python需要语言编写小游戏_作的解释|作的意思|汉典“作”字的基本解释