亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Java代碼讀取文件緩存問題解決

瀏覽:2日期:2022-08-11 15:49:21
一、業務場景

最近遇到了一個Java文件讀取的緩存問題,打遠程斷點出現的也是原來的老代碼參數,好在晚上十點突然找到了解決方案,豁然開朗,現整理分享思路,希望對遇到同樣文件讀取緩存問題的你有幫助

Java代碼讀取文件緩存問題解決

我更新幾次插件包后,服務器也緩存也清理了

Java代碼讀取文件緩存問題解決

我本地用postman調用測試,下載的文件是新文件,但是上線后發現下載下來的文件是老文件

下載下來的文件還是原來的文件,文件大小28.5K,我動態寫入部分數據,按道理下載下來的文件大小應該比這個大

Java代碼讀取文件緩存問題解決

業務場景: 我現在需要獲取一個Java項目resource目錄下的Excel文件,然后往此Excel文件的第二個sheet頁動態插入部分數據

實踐情況:我在如何獲取此文件的相對路徑情況下花費了很多的時間,原來定義了一個參數String path和String realpath打完包驗證發現線下是好的,服務器不行,我將對應代碼移除

更新后的方法:我使用新的方法動態獲取當前文件,將此文件轉換為流傳入對應的對象;

問題: 本地測試可以動態的導出Excel文件,但是代碼上線,下載下來的模板是老項目,遠程斷點出現原來老的定義的參數

來看看我遠程斷點的相關情況

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

Java代碼讀取文件緩存問題解決

在這個讀取的過程中我發現了如下這些屬性:path,upload

Java代碼讀取文件緩存問題解決

還有realpath以及返回為空的wb

Java代碼讀取文件緩存問題解決

這些屬性我是我上午測試的時候定義的,但是此時已經不使用拼接路徑的方式去構建workbook文件了,是將流放入workbook對象中構建文件

原來的解決思路: 我本地沒問題,我就覺得是緩存的原因:1、清理卸載插件重新安裝2、清理瀏覽器緩存,清理Tomcat緩存,重啟Tomcat3、都試過后還不行就重啟reboot服務器

Java代碼讀取文件緩存問題解決

但是不管我怎么操作,服務器依然走老代碼,下載下來老的模板

二、解決方案

如何解決問題?

自己創建一個新的文件夾,將自己的文件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');

來我們驗證一下我們是否讀取了

Java代碼讀取文件緩存問題解決

如果換一個不存在的路徑或者文件名,效果如下

Java代碼讀取文件緩存問題解決

如上即我們成功讀取到了此文件

自測代碼如下

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 讀取文件緩存內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 国产亚洲一区二区麻豆 | 欧美r级在线观看 | 国产性生大片免费观看性 | 中文字幕一区二区三区精彩视频 | 九九视频免费精品视频免费 | 亚洲人成网站在线观看播放青青 | 亚洲一区二区三区日本久久九 | 亚洲一区二区三区夜色 | 国产不卡在线观看 | 美国美女一级片 | 人人九九精 | 高清一级做a爱过程免费视频 | 亚洲精品国产手机 | 香蕉看片 | 黄在线观看www免费看 | 成人免费网址在线 | 免费看黄的网址 | 丁香啪啪天堂激情婷婷 | 亚洲精品一区二区乱码在线观看 | 女人帮男人橹的视频网站 | 一级黄色片在线 | 亚洲欧美一区二区三区蜜芽 | 国产一国产一有一级毛片 | 国产免费怕怕免费视频观看 | 国产成人免费片在线视频观看 | 日韩精品视频网 | 久久er99热精品一区二区 | 久久精品国产免费中文 | 老司机成人精品视频lsj | 亚洲国产精品综合一区在线 | 49pao强力免费打造在线高清 | 精品一区二区三区水蜜桃 | 久久亚洲在线 | 日本黄色免费在线观看 | 一区二区在线欧美日韩中文 | 久久精品一区二区三区四区 | 国产精品宾馆在线精品酒店 | 欧美亚洲专区 | www.久久视频| 欧美日韩在线精品一区二区三区 | 一区二区三区四区精品 |