SpringBoot如何讀取mock數(shù)據(jù)(高效調(diào)試接口)
寫在前面:故不積跬步,無以致千里,不積小流,無以成江海。
個人感悟:
最近需求上偏向數(shù)倉需求較多,大結(jié)構(gòu)型的json或者字符串 比較多,為了節(jié)省時間,以往從數(shù)據(jù)庫 或者三方SDK獲取數(shù)據(jù)的地方,直接讀取本地mock數(shù)據(jù)進(jìn)行調(diào)試。真的很高效,無非啟動項(xiàng)目,單元測試 或者 主函數(shù)就可以自測。 記錄一下這次的經(jīng)驗(yàn)分享給大家,留給自己備用
SpringBoot中讀取resource資源文件MOCK數(shù)據(jù)
調(diào)試接口
在 Spring Boot 項(xiàng)目中,通常會將靜態(tài)資源或配置文件放在 src/main/resources
目錄下。以下是如何讀取存放在 resources
目錄中的文本文件的步驟和代碼示例:
文件路徑
將文件放在 src/main/resources
目錄下,例如文件名為 mock_data.txt
。
代碼示例
可以通過 Spring 的 ClassPathResource
或標(biāo)準(zhǔn)的 ClassLoader
來讀取 resources
中的文件內(nèi)容。
方法 1:使用 ClassPathResource
import org.springframework.core.io.ClassPathResource; import java.io.BufferedReader; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; public class FileUtil { public static String readFileFromResources(String fileName) { StringBuilder content = new StringBuilder(); try { // 獲取文件資源 ClassPathResource resource = new ClassPathResource(fileName); try (BufferedReader reader = new BufferedReader( new InputStreamReader(resource.getInputStream(), StandardCharsets.UTF_8))) { String line; while ((line = reader.readLine()) != null) { content.append(line).append("\n"); } } } catch (Exception e) { e.printStackTrace(); } return content.toString(); } }
方法 2:使用 ClassLoader
import java.io.BufferedReader; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; public class FileUtil { public static String readFileFromResources(String fileName) { StringBuilder content = new StringBuilder(); try { // 獲取當(dāng)前線程的類加載器 ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); try (BufferedReader reader = new BufferedReader( new InputStreamReader(classLoader.getResourceAsStream(fileName), StandardCharsets.UTF_8))) { String line; while ((line = reader.readLine()) != null) { content.append(line).append("\n"); } } } catch (Exception e) { e.printStackTrace(); } return content.toString(); } }
示例用法
public class Main { public static void main(String[] args) { String content = FileUtil.readFileFromResources("mock_data.txt"); System.out.println(content); } }
注意事項(xiàng)
文件路徑:
- 如果文件位于
resources
的子目錄下,例如data/mock_data.txt
,那么fileName
應(yīng)設(shè)置為"data/mock_data.txt"
。
文件存在性:
- 確保
mock_data.txt
已經(jīng)正確放置在src/main/resources
或其子目錄下。 - 如果文件不存在或路徑錯誤,會拋出
FileNotFoundException
。
編碼問題:
- 讀取時應(yīng)指定文件的字符集(如
UTF-8
),以避免亂碼問題。
通過這些方法,你可以輕松讀取并引用 Spring Boot 項(xiàng)目中 resources
目錄下的文件內(nèi)容。
到此這篇關(guān)于SpringBoot中讀取mock數(shù)據(jù)(高效調(diào)試接口)的文章就介紹到這了,更多相關(guān)SpringBoot 讀取mock數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot項(xiàng)目編寫測試單元完整步驟記錄
這篇文章主要介紹了如何使用JUnit編寫Spring?Boot項(xiàng)目中的測試單元,包括引入依賴、配置文件設(shè)置、啟動文件創(chuàng)建以及編寫測試類的步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-03-03Spring?MVC文件請求處理MultipartResolver詳解
這篇文章主要介紹了Spring?MVC文件請求處理詳解:MultipartResolver,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-11-114位吸血鬼數(shù)字的java實(shí)現(xiàn)思路與實(shí)例講解
今天小編就為大家分享一篇關(guān)于4位吸血鬼數(shù)字的java實(shí)現(xiàn)思路與實(shí)例講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03java使用JDBC連接數(shù)據(jù)庫的五種方式(IDEA版)
這篇文章主要介紹了java使用JDBC連接數(shù)據(jù)庫的五種方式(IDEA版),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04