java web開發(fā)中獲取tomcat上properties文件內(nèi)容的方法
在java web開發(fā)的時(shí)候經(jīng)常會(huì)用到讀取讀取或存放文件,這個(gè)文件的默認(rèn)路徑在哪里呢?寫死在程序里面顯然是可以的,但這樣子不利于位于,假如有一天項(xiàng)目從window移植到linux,或者保存文件的路徑變了,就需要去源代碼中查找,進(jìn)行替換,這樣子不僅效率低,而且程序的耦合度也會(huì)過(guò)高,這里我用了一個(gè)properties文件用于存放文件的保存路徑,需要保存或者讀取都來(lái)自己properties所保存的路徑。
1、我存放的propeities文件路徑
因?yàn)閘inux和window上面的分盤是不一樣的,所以我把保存文件路徑的properties文件放在項(xiàng)目中,所以可以通過(guò)獲取tomcat所以路徑來(lái)獲取該文件
2、properties文件內(nèi)容
這里文件路徑我使用了 / ,可以兼容linux系統(tǒng)和window,假如在程序中文件的分隔符建議使用File.separator作為分隔符,以兼容不同的操作系統(tǒng)。
filePath=E:/file
3、獲取文件所在的路徑
String dir = System.getProperty("user.dir"); //獲得tomcat所在的工作路徑 System.out.println(dir); //獲取到存儲(chǔ)了文件存儲(chǔ)位置的filedir.properties 文件路徑 String dir2 = dir.substring(0, dir.length()-4) + File.separator +"webapps" + File.separator + "NGBOSSmonitor" +File.separator + "WEB-INF" + File.separator + "classes" + File.separator + "META-INF" + File.separator + "config" + File.separator + "filedir.properties";
dir 獲取到的是 :D:\Tocat\tomcat6.0.37\bin
我獲取的dir2 為 D:\Tocat\tomcat6.0.37\webapps\你的項(xiàng)目名\WEB-INF\classes\META-INF\config\filedir.properties
4、通過(guò)properties文件,獲取到里面的filePath的值,即獲得 E:/file
/** * 獲取filePath路徑【properities文件】中key對(duì)應(yīng)的值, * @param filePath properities文件路徑【包含properities文件】 * @param key 要查找的key值 * @return key對(duì)應(yīng)的value */ public String GetValueByKey(String filePath, String key) { Properties pps = new Properties(); try { InputStream in = new BufferedInputStream (new FileInputStream(filePath)); pps.load(in); String value = pps.getProperty(key); //System.out.println(key + " = " + value); in.close(); return value; }catch (IOException e) { e.printStackTrace(); return null; } }
到達(dá)這里,已經(jīng)完整得獲得了filedir.properties 里面得 filePath的值。
5、總結(jié)
開發(fā)過(guò)程中,使程序解耦合很重要,耦合程度越低,我們開發(fā)修改越容易。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- IDEA部署JavaWeb項(xiàng)目到Tomcat服務(wù)器的方法
- 基于Tomcat7、Java、WebSocket的服務(wù)器推送聊天室實(shí)例
- 詳解CentOS安裝tomcat并且部署Java Web項(xiàng)目
- Java后端Tomcat實(shí)現(xiàn)WebSocket實(shí)例教程
- Java Web使用簡(jiǎn)單的批處理操作(記事本+Tomcat)
- 學(xué)習(xí)javaweb如何配置Tomcat的熱啟動(dòng)
- linux(center OS7)安裝JDK、tomcat、mysql 搭建java web項(xiàng)目運(yùn)行環(huán)境
- Java Web項(xiàng)目部署在Tomcat運(yùn)行出錯(cuò)與解決方法示例
- Java web項(xiàng)目啟動(dòng)Tomcat報(bào)錯(cuò)解決方案
相關(guān)文章
Java 棧和隊(duì)列的交互實(shí)現(xiàn)
棧和隊(duì)列都是常用的數(shù)據(jù)結(jié)構(gòu),本文就來(lái)介紹一下Java 棧和隊(duì)列的交互實(shí)現(xiàn),主要包括隊(duì)列模擬實(shí)現(xiàn)棧及棧模擬實(shí)現(xiàn)隊(duì)列,具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12Mybatis分頁(yè)插件PageHelper的配置和簡(jiǎn)單使用方法(推薦)
在使用Java Spring開發(fā)的時(shí)候,Mybatis算是對(duì)數(shù)據(jù)庫(kù)操作的利器了。這篇文章主要介紹了Mybatis分頁(yè)插件PageHelper的配置和使用方法,需要的朋友可以參考下2017-12-12JAVA實(shí)現(xiàn)圖書管理系統(tǒng)項(xiàng)目
相信每一個(gè)學(xué)生學(xué)編程的時(shí)候,應(yīng)該都會(huì)寫一個(gè)小項(xiàng)目——圖書管理系統(tǒng)。為什么這么說(shuō)呢?我認(rèn)為一個(gè)學(xué)校的氛圍很大一部分可以從圖書館的氛圍看出來(lái),而圖書管理系統(tǒng)這個(gè)不大不小的項(xiàng)目,接觸的多,也比較熟悉,不會(huì)有陌生感,能夠練手,又有些難度,所以我的小項(xiàng)目也來(lái)了2021-10-10淺談SpringBoot項(xiàng)目如何讓前端開發(fā)提高效率(小技巧)
這篇文章主要介紹了淺談SpringBoot項(xiàng)目如何讓前端開發(fā)提高效率(小技巧),主要介紹了Swagger和Nginx提高效率的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-04-04SpringCloud Gateway HttpWebHandlerAdapter鏈路調(diào)用請(qǐng)求流程介
Spring Cloud Gateway旨在為微服務(wù)架構(gòu)提供一種簡(jiǎn)單有效的、統(tǒng)一的 API 路由管理方式。Spring Cloud Gateway 作為 Spring Cloud 生態(tài)系中的網(wǎng)關(guān),它不僅提供統(tǒng)一的路由方式,并且基于 Filter 鏈的方式提供了網(wǎng)關(guān)基本的功能,例如:安全、監(jiān)控/埋點(diǎn)和限流等2022-10-10關(guān)于Arrays.sort()使用的注意事項(xiàng)
這篇文章主要介紹了關(guān)于Arrays.sort()使用的注意事項(xiàng),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05IntelliJ IDEA使用教程從入門到上癮(2019圖文版)
這篇文章主要介紹了IntelliJ IDEA使用教程從入門到上癮(2019圖文版),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-12-12