SpringBoot如何讀取mock數(shù)據(jù)(高效調(diào)試接口)
寫在前面:故不積跬步,無以致千里,不積小流,無以成江海。
個人感悟:
最近需求上偏向數(shù)倉需求較多,大結(jié)構(gòu)型的json或者字符串 比較多,為了節(jié)省時間,以往從數(shù)據(jù)庫 或者三方SDK獲取數(shù)據(jù)的地方,直接讀取本地mock數(shù)據(jù)進(jìn)行調(diào)試。真的很高效,無非啟動項目,單元測試 或者 主函數(shù)就可以自測。 記錄一下這次的經(jīng)驗分享給大家,留給自己備用
SpringBoot中讀取resource資源文件MOCK數(shù)據(jù)
調(diào)試接口
在 Spring Boot 項目中,通常會將靜態(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);
}
}注意事項
文件路徑:
- 如果文件位于
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 項目中 resources 目錄下的文件內(nèi)容。
到此這篇關(guān)于SpringBoot中讀取mock數(shù)據(jù)(高效調(diào)試接口)的文章就介紹到這了,更多相關(guān)SpringBoot 讀取mock數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用JAVA反射,讀取數(shù)據(jù)庫表名,自動生成對應(yīng)實體類的操作
這篇文章主要介紹了利用JAVA反射,讀取數(shù)據(jù)庫表名,自動生成對應(yīng)實體類的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08
Java JDBC連接Kerberos認(rèn)證的HIVE和Impala方式
本文主要介紹了HiveJDBC和ImpalaJDBC的使用方法,包括版本對應(yīng)、Maven安裝、主機名配置、端口開通、JDBC連接和Kerberos認(rèn)證等2025-02-02
Java并發(fā)J.U.C并發(fā)容器類list set queue
這篇文章主要為大家介紹了Java并發(fā),J.U.C并發(fā)容器類list set queue,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
SpringFramework中的數(shù)據(jù)校驗方式
這篇文章主要介紹了SpringFramework中的數(shù)據(jù)校驗方式,本文通過實例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-12-12

