广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Java代码读取文件缓存问题解决
  • 813
分享到

Java代码读取文件缓存问题解决

2024-04-02 19:04:59 813人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

一、业务场景 最近遇到了一个Java文件读取的缓存问题,打远程断点出现的也是原来的老代码参数,好在晚上十点突然找到了解决方案,豁然开朗,现整理分享思路,希望对遇到同样文件读取缓存问题

一、业务场景

最近遇到了一个Java文件读取的缓存问题,打远程断点出现的也是原来的老代码参数,好在晚上十点突然找到了解决方案,豁然开朗,现整理分享思路,希望对遇到同样文件读取缓存问题的你有帮助

在这里插入图片描述

我更新几次插件包后,服务器也缓存也清理了

在这里插入图片描述

我本地用postman调用测试,下载的文件是新文件,但是上线后发现下载下来的文件是老文件

下载下来的文件还是原来的文件,文件大小28.5K,我动态写入部分数据,按道理下载下来的文件大小应该比这个大

在这里插入图片描述

业务场景: 我现在需要获取一个Java项目resource目录下的excel文件,然后往此Excel文件的第二个sheet页动态插入部分数据

实践情况:我在如何获取此文件的相对路径情况下花费了很多的时间,原来定义了一个参数String path和String realpath打完包验证发现线下是好的,服务器不行,我将对应代码移除

更新后的方法:我使用新的方法动态获取当前文件,将此文件转换为流传入对应的对象;

问题: 本地测试可以动态的导出Excel文件,但是代码上线,下载下来的模板是老项目,远程断点出现原来老的定义的参数

来看看我远程断点的相关情况

我是读取一个文件转行成文件流然后放入指定的Workbook中(即读取一个已有Excel文件)

在这里插入图片描述

在这个读取的过程中我发现了如下这些属性:path,upload

在这里插入图片描述

还有realpath以及返回为空的wb

在这里插入图片描述

这些属性我是我上午测试的时候定义的,但是此时已经不使用拼接路径的方式去构建workbook文件了,是将流放入workbook对象中构建文件

原来的解决思路: 我本地没问题,我就觉得是缓存的原因:
1、清理卸载插件重新安装
2、清理浏览器缓存,清理Tomcat缓存,重启Tomcat
3、都试过后还不行就重启reboot服务器

在这里插入图片描述

但是不管我怎么操作,服务器依然走老代码,下载下来老的模板

二、解决方案

如何解决问题?

自己创建一个新的文件夹,将自己的文件xlsx文件放入其中,读取文件路径的地方更新成读取新的文件路径

如原来是


InputStream inputstream = this.getClass().getClassLoader().getResourceAsStream("hello/Test.xlsx");

现在创建一个新的文件夹,放入原文件如 Word/Test.xlsx ,然后读取新的路径


 InputStream inputstream = this.getClass().getClassLoader().getResourceAsStream("word/Test.xlsx");

打包再上线测试

反思:具体问题原因肯定是打包的时候文件被缓存到哪里了,没清理干净,更新一下新路径,走新的读取方式问题就解决了

总结:创建新的路径,走新的读取方式

三、文件读取

项目之前是静态下载模板的即前端静态的下载


window.location.href = url

此业务是先读取,再下载,如何读取自己Java项目中对应相对位置的文件呢 ?


InputStream inputstream = this.getClass().getClassLoader().getResourceAsStream("hello/Test.xlsx");

来我们验证一下我们是否读取了

在这里插入图片描述

如果换一个不存在的路径或者文件名,效果如下

在这里插入图片描述

如上即我们成功读取到了此文件

自测代码如下


public class TestPath {


    InputStream getFileStream(){
        InputStream inputstream = this.getClass().getClassLoader().getResourceAsStream("helloWord/Test.xlsx");
        return  inputstream;
    }

    public static void main(String[] args) {
        TestPath stream = new TestPath();
        System.out.println( stream.getFileStream());
    }
}

接下来也会整理一下Java读取文件以及导入导出Excel表格相关问题,欢迎同步沟通学习交流!

到此这篇关于Java代码读取文件缓存问题解决的文章就介绍到这了,更多相关Java 读取文件缓存内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java代码读取文件缓存问题解决

本文链接: https://www.lsjlt.com/news/127159.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java代码读取文件缓存问题解决
    一、业务场景 最近遇到了一个Java文件读取的缓存问题,打远程断点出现的也是原来的老代码参数,好在晚上十点突然找到了解决方案,豁然开朗,现整理分享思路,希望对遇到同样文件读取缓存问题...
    99+
    2022-11-12
  • 如何解决Java代码读取文件缓存的问题
    小编给大家分享一下如何解决Java代码读取文件缓存的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、业务场景最近遇到了一个Java文件读取的缓存问题,打远程断点出现的也是原来的老代码参数,好在晚上十点突然找到了解决方...
    99+
    2023-06-15
  • 解决.properties文件中文读取乱码问题(idea Java)
    一、 对于.properties文件的读取容易出现的中文读取乱码问题 原始代码 未加读取.properties文件的规则 public class CityCodeUtils { private...
    99+
    2023-09-11
    java intellij-idea 开发语言 学习
  • Java读取properties文件之中文乱码问题及解决
    目录Java读取properties文件中文乱码两种方式读取properties配置文件方式一:使用Properties集合工具类读取配置文件。方式二:使用ResourceBundl...
    99+
    2022-12-29
    Java读取properties文件 Java中文乱码 Java properties文件
  • java读取文件乱码问题图文详解
    Java读取文本文件(例如csv文件、txt文件等),遇到中文就变成乱码。(推荐:java视频教程)读取代码如下:List lines=new ArrayList(); BufferedReader br = new BufferedR...
    99+
    2022-02-05
    java
  • Java读写.properties文件解决中文乱码问题
    一般使用到properties配置文件,一般都是在spring项目里面,直接由框架帮你读,当然,你也得考虑到编码的问题。但是现在要是要求使用Java直接读写properties文件,就发现很多的问题,比如,我的properties文件的编码...
    99+
    2023-05-30
    properties 乱码 ava
  • SpringBoot中如何解决读取properties文件读取问题
    目录如何解决读取properties文件读取问题问题描述路径设置中文乱码读取指定properties文件设置配置属性类型配置文件如何解决读取properties文件读取问题 问题描述...
    99+
    2022-11-13
  • python 读取文件乱码问题
    原文地址:http://www.zisexinghen.cn/likeshare/322.html 一、问题: python读取文件时会遇到乱码的问题 二、解决方法: 1、已utf-8格式打开文档 f = open(r'E:\Pyth...
    99+
    2023-01-31
    乱码 文件 python
  • 解决jupyter (python3) 读取文件遇到的问题
    1、出现错误 train_df = pd.read_csv( 'C:\Users\lenovo\Desktop\train.csv',encoding='utf-8') 报...
    99+
    2022-11-11
  • java读取csv文件乱码怎么解决
    csv文件默认编码为ANSI,java读取CSV出现乱码主要是编码不一致问题。(推荐:java视频教程)DataInputStream in = new DataInputStream(new FileInputStream(new Fil...
    99+
    2020-07-07
    java 乱码
  • java读取txt文件乱码解决方法
    java读取txt文件,如果编码格式不匹配,就会出现乱码现象。所以读取txt文件的时候需要设置读取编码。txt文档编码格式都是写在文件头的,在程序中需要先解析文件的编码格式,获得编码格式后,在按此格式读取文件就不会产生乱码了。(推荐:jav...
    99+
    2016-06-11
    java
  • 如何解决php读取word 中文乱码问题
    本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。如何解决php读取word 中文乱码问题?php读取word文件过程中乱码,怎么解决?一、首先要确认php版本,最好是高于5.6二、启用PHP Com 扩展// 将以下...
    99+
    2017-06-25
    php word
  • 怎么解决php读取word中文乱码问题
    这篇文章主要介绍“怎么解决php读取word中文乱码问题”,在日常操作中,相信很多人在怎么解决php读取word中文乱码问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决php读取word中文乱码问题...
    99+
    2023-06-22
  • java读取txt文件代码片段
    本文实例为大家分享了java读取txt文件的具体代码,供大家参考,具体内容如下学习小记:  1、首先要根据路径获取你的 txt 文本文件。File file = new File(path);  2、将获取到的这个字节码流读进缓存。new ...
    99+
    2023-05-31
    java txt ava
  • java读取文件内存溢出怎么解决
    Java读取文件内存溢出可以通过以下几种方式进行解决:1. 使用BufferedReader逐行读取文件:使用BufferedRea...
    99+
    2023-08-08
    java
  • java读取文件内存溢出如何解决
    Java读取文件时出现内存溢出的问题,可以尝试以下几种解决方法:1. 使用缓冲区:通过缓冲区来读取文件内容,可以减少频繁的IO操作,...
    99+
    2023-09-20
    java
  • pd.read_csv读取文件路径出现的问题解决
    目录写在前面出现的问题解决问题用相对路径读取数据集完整的代码参考写在前面 在用pd.read_csv读取数据集时,我有2个疑问?1是:写相对路径还是绝对路径。2是:相对路径,绝对路径...
    99+
    2022-11-11
  • JupyterNotebook读取csv文件出现的问题及解决
    目录Jupyter Notebook读取csv文件失败Excel跨表使用注意事项(包含jupyter读取csv)(1)问题(2)问题(3)问题总结Jupyter Notebook读取...
    99+
    2023-01-04
    Jupyter Notebook读取csv文件 Jupyter Notebook csv Jupyter Notebook读取csv问题
  • Python解决读取文件出现空行的问题
    使用python读取文本时,发现输出时,会有空行,经百度找到解决方案 文本1内容如下:1 2 3 4 5 6 67python内容如下:#!/usr/bin/env python # _*_coding:utf-8_*_ file = op...
    99+
    2023-01-31
    空行 文件 Python
  • 解决vue中reader.onload读取文件的异步问题
    目录reader.onload读取文件的异步问题问题解决reader.onloadend异步返回结果问题reader.onload读取文件的异步问题 问题 用element上传文件组...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作