1. 程式人生 > >【JavaEE】讀取配置檔案路徑的幾種方式

【JavaEE】讀取配置檔案路徑的幾種方式

讀取配置檔案的各種方式

1.類載入器讀取:

只能讀取classes或者類路徑中的任意資源,但是不適合讀取特別大的資源。
①獲取類載入器 ClassLoader cl = 類名.class.getClassLoader();
②呼叫類載入器物件的方法:public URL getResource(String name);
此方法查詢具有給定名稱的資源,資源的搜尋路徑是虛擬機器的內建類載入器的路徑。
類 URL 代表一個統一資源定位符,它是指向網際網路”資源”的指標。
資源可以是簡單的檔案或目錄,也可以是對更為複雜的物件的引用.
URL物件方法:public String getPath(),獲取此 URL 的路徑部分。
示例程式碼:

public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {          
        ClassLoader cl = ServletContextDemo.class.getClassLoader();//得到類載入器
        URL url = cl.getResource("cn/edu/c.properties");
        String path = url.getPath();
        InputStream in
= new FileInputStream(path); Properties props = new Properties(); props.load(in); System.out.println(props.getProperty("key")); }

2.類載入器讀取:

只能讀取classes或者類路徑中的任意資源,但是不適合讀取特別大的資源。
①獲取類載入器 ClassLoader cl = 類名.class.getClassLoader();
②呼叫類載入器物件的方法:public InputStream getResourceAsStream(String name);
返回讀取指定資源的輸入流。資源的搜尋路徑是虛擬機器的內建類載入器的路徑。

public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        ClassLoader cl = ServletContextDemo.class.getClassLoader();//得到類載入器
        InputStream in = cl.getResourceAsStream("cn/edu/c.properties");
        Properties props = new Properties();
        props.load(in);
        System.out.println(props.getProperty("key"));
    }

3.ResourceBundle讀取:只能讀取properties的檔案。

ResourceBundle讀取的檔案是在classpath路徑下,也就是src或者src目錄下。我們在專案中需要打包,
打包後的properties檔案在jar中,修改很不方便,我們需要把properties檔案放在jar外隨時可以修改。
這樣打包後可以直接修改properties檔案。

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        //配置檔名為c.properties在包cn.edu下。      
        ResourceBundle rb = ResourceBundle.getBundle("cn.edu.c");
        System.out.println(rb.getString("key"));
    } 

4.利用ServletContext可以讀取應用中任何位置上的資源。

侷限性:只能在web應用中用

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        String path = getServletContext().getRealPath("/WEB-INF/classes/cn/edu/c.properties");  
        InputStream in = new FileInputStream(path);
        Properties props = new Properties();
        props.load(in);
        System.out.println(props.getProperty("key"));
    }

相關推薦

JavaEE讀取配置檔案路徑方式

讀取配置檔案的各種方式 1.類載入器讀取: 只能讀取classes或者類路徑中的任意資源,但是不適合讀取特別大的資源。 ①獲取類載入器 ClassLoader cl = 類名.class.getClassLoader(); ②呼叫類載入器物件的方法:

Spring Boot 讀取配置檔案方式

Spring Boot 讀取配置檔案的方式可以分為 1. 註解 2. 獲取 Spring Boot 的環境變數 來獲取配置檔案的資訊,其中註解的方式又有集中表現形式。 第一步:建立 Spring Boot 工程( Maven 工程新增 Spring B

java讀取配置檔案方式

web工程一般都會連線資料庫,然而載入資料庫配置檔案主要有幾種。1.讀取properties檔案,連線資料庫   //這是最簡單的方式,注:config.properties在src目錄下#DB Properties Driver=com.microsoft.sqlserve

讀取配置檔案方式

1、ResourceBundle讀取.properties 配置檔案 例如,存在一個Messages.properties 配置檔案,根據key讀取value過程如下: @SuppressWarnings("serial") public abstract class D

Spring Boot讀取配置檔案方式

Spring Boot獲取檔案總的來說有三種方式,分別是@Value註解,@ConfigurationProperties註解和Environment介面。這三種註解可以配合著@PropertySource來使用,@PropertySource主要是用來指定具體的配置檔案。 ## @PropertySour

spring-boot-route(二)讀取配置檔案方式

Spring Boot提供了兩種格式的配置檔案,分別是`properties` 和 `yml`。Spring Boot最大的特點就是自動化配置,如果我們想修改自動化配置的預設值,就可以通過配置檔案來指定自己伺服器相關的引數。 配置檔案集約管理了配置資訊,如果把配置引數寫到Java程式碼中,維護起來非常不方便

Java讀取配置檔案

package utils.properties; import java.util.Properties; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.Concu

Java讀取配置檔案方法以及路徑問題

在現實工作中,我們常常需要儲存一些系統配置資訊,大家一般都會選擇配置檔案來完成,本文根據筆者工作中用到的讀取配置檔案的方法小小總結一下,主要敘述的是spring讀取配置檔案的方法。 一.讀取xml配置檔案 (一)新建一個java bean(HelloBean.java) j

Java 讀取 .properties 配置檔案方式

Java 開發中,需要將一些易變的配置引數放置再 XML 配置檔案或者 properties 配置檔案中。然而 XML 配置檔案需要通過 DOM 或 SAX 方式解析,而讀取 properties 配置檔案就比較容易。 介紹幾種讀取方式: 1、基於ClassLoder

Java中spring讀取配置檔案方法

    在現實工作中,我們常常需要儲存一些系統配置資訊,大家一般都會選擇配置檔案來完成,本文根據筆者工作中用到的讀取配置檔案的方法小小總結一下,主要敘述的是spring讀取配置檔案的方法。     一、讀取xml配置檔案     (一)新建一個java bean

Java 讀取 properties 配置檔案方式及注意點

1、引言 java開發中,經常需要讀取配置檔案,有時即使我們方法是對的,但是就是讀取不到需要的內容,會報下面的錯: java.io.FileNotFoundException: sr/configure/config.properties (No such file or dir

java讀取配置檔案方法

在現實工作中,我們常常需要儲存一些系統配置資訊,大家一般都會選擇配置檔案來完成,本文根據筆者工作中用到的讀取配置檔案的方法小小總結一下,主要敘述的是spring讀取配置檔案的方法。 一.讀取xml配置檔案 (一)新建一個java bean(HelloBean.java

java 讀取配置檔案方法

      讀取.properties配置檔案在實際的開發中使用的很多,總結了一下,有以下幾種方法(僅僅是我知道的): 一.通過jdk提供的java.util.Properties類         此類繼承自java.util.HashTable,即實現了Map介面

C++讀取配置檔案方法

ini檔案的話讀取更方便點。C++中有寫ini檔案和讀ini檔案的函式(應該是VC環境提供的,標準C++沒有。)windows下就直接用函式讀取ini檔案 看的你配置檔案是什麼型別了,如果是xml檔案的話,可以用TinyXML解析器去解析,看這裡:http://www.c

Python讀取WAV檔案方式整理

1)scipy from scipy.io import wavfile import numpy as np sample_rate, sig = wavfile.read('new.wav') print("取樣率: %d" % sample_rate) print(sig)

Nginx實現負載均衡的方式

要理解負載均衡,必須先搞清楚正向代理和反向代理。 正向代理與反向代理【總結】 注: 正向代理,代理的是使用者。 反向代理,代理的是伺服器 什麼是負載均衡 當一臺伺服器的單位時間內的訪問量越大時,伺服器壓力就越大,大到超過自身承受能力時,伺服器就會崩潰。為了避免伺服器崩潰

SpringBoot讀取配置資料的方式

#####SpringBoot讀取配置資料的幾種方式 方式一: 我們通過@Value("${spring.datasource.url}")這樣的方式讀取PropertyPlaceholderConfigurer.properties配置資料集合,本種方式是可以適應各種應用場景,推薦

SpringBoot讀取配置檔案的兩方式以及自定義配置檔案讀取

1.讀取預設配置檔案中的資料 application.properties 直接使用@Value註解獲取資料 2.使用Environment獲取資料 防止亂碼統一編碼格式 注入Environment 使用getPro

資料庫分庫分表的方式及總結

分庫分表的幾種常見形式公司業務的發展過程中,提高系統的處理承載能力,在資料庫端通常都會選擇分庫分表。今天對資料庫的分庫分表進行了一次學習與總結。1、垂直分表垂直分表在日常開發和設計中比較常見,通俗的說法叫做“大表拆小表”,拆分是基於關係型資料庫中的“列”(欄位)進行的。通常情

NHibernate讀取配置檔案的三方式

當然,為了方便起見,我們一般把所有的影射類檔案及xml檔案統一放在一個程式集中,然後使用config.AddAssembly(assemblyName)的方式,讓NHibernate自動去查詢指定程式集中所有的對映檔案和對映類。你有沒有發現在我們使用標準的hibernate配置檔案時,有如下一個元素:<