カテゴリ: Javaのプロパティファイル 更新日: 2026/05/09

Javaのプロパティファイルの使い方を完全解説!値をプログラム内で安全に読み込む方法

2138
Java のプロパティファイルの値をプログラム内で利用する方法

先生と生徒の会話形式で理解しよう

生徒

「Javaでデータベースの接続情報や設定値を外部ファイルに書いて読み込む方法はありますか?」

先生

「あります。Javaではプロパティファイルを使うことで、設定値をプログラムの外に分離して管理できます。」

生徒

「その値をJavaプログラム内でどうやって取得するのですか?」

先生

「java.util.Propertiesクラスを使えば簡単に読み込みができます。順番に見ていきましょう。」

1. Javaのプロパティファイルとは

1. Javaのプロパティファイルとは
1. Javaのプロパティファイルとは

Javaのプロパティファイルとは、アプリケーションの設定値を保存するためのテキストファイルです。拡張子は一般的にpropertiesを使用します。設定ファイル、外部設定、環境設定ファイルとして利用されることが多く、Java開発では非常に重要な仕組みです。

例えばデータベース接続情報、APIキー、ログレベル、アプリケーション名などを直接ソースコードに書いてしまうと、変更のたびに再コンパイルが必要になります。そこでプロパティファイルを使うことで、設定値を外部化し、保守性やセキュリティを向上させることができます。

Java初心者の方にとっても、プロパティファイルの使い方を理解することは、実務レベルのJavaプログラミングへの第一歩となります。

2. プロパティファイルの基本的な書き方

2. プロパティファイルの基本的な書き方
2. プロパティファイルの基本的な書き方

まずはプロパティファイルの書き方を確認しましょう。基本はキーと値をイコールで結びます。


app.name=SampleApplication
db.url=jdbc:mysql://localhost:3306/sampledb
db.user=root
db.password=secret

このようにキーと値のペアで構成されます。Javaでプロパティファイルを読み込むことで、これらの値をプログラム内で取得できます。設定管理、環境切り替え、外部設定ファイル活用などの場面で頻繁に使われます。

3. Propertiesクラスで値を読み込む方法

3. Propertiesクラスで値を読み込む方法
3. Propertiesクラスで値を読み込む方法

Javaでプロパティファイルを読み込むには、java.util.Propertiesクラスを使用します。以下は基本的な読み込み方法です。


import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class PropertyReadExample {
    public static void main(String[] args) {
        Properties properties = new Properties();

        try {
            FileInputStream fis = new FileInputStream("config.properties");
            properties.load(fis);

            String appName = properties.getProperty("app.name");
            System.out.println("アプリ名: " + appName);

            fis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

getPropertyメソッドを使うことで、指定したキーに対応する値を取得できます。Javaプロパティファイル読み込みの基本形として覚えておきましょう。

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

4. デフォルト値を指定して取得する方法

4. デフォルト値を指定して取得する方法
4. デフォルト値を指定して取得する方法

設定値が存在しない場合に備えて、デフォルト値を指定することも可能です。これは実務でもよく使われるテクニックです。


import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class PropertyDefaultExample {
    public static void main(String[] args) throws IOException {
        Properties properties = new Properties();
        properties.load(new FileInputStream("config.properties"));

        String logLevel = properties.getProperty("log.level", "INFO");
        System.out.println("ログレベル: " + logLevel);
    }
}

キーが存在しない場合は第二引数の値が返されます。Java設定ファイル管理や安全な値取得のために重要な方法です。

5. クラスパスからプロパティファイルを読み込む方法

5. クラスパスからプロパティファイルを読み込む方法
5. クラスパスからプロパティファイルを読み込む方法

実際のJavaアプリケーションでは、srcフォルダ配下にプロパティファイルを配置し、クラスパス経由で読み込む方法が一般的です。


import java.io.InputStream;
import java.util.Properties;

public class ClassPathPropertyExample {
    public static void main(String[] args) throws Exception {
        Properties properties = new Properties();

        InputStream is = ClassPathPropertyExample.class
                .getClassLoader()
                .getResourceAsStream("config.properties");

        properties.load(is);

        String dbUrl = properties.getProperty("db.url");
        System.out.println("DB接続URL: " + dbUrl);
    }
}

この方法を使えば、jarファイルに含めた設定ファイルも読み込めます。Javaプロジェクト構成やビルド環境でも重要な知識です。

6. 数値や真偽値に変換して利用する方法

6. 数値や真偽値に変換して利用する方法
6. 数値や真偽値に変換して利用する方法

プロパティファイルの値は文字列として取得されます。そのため、数値や真偽値として使う場合は型変換が必要です。


import java.util.Properties;

public class PropertyTypeConvertExample {
    public static void main(String[] args) {
        Properties properties = new Properties();
        properties.setProperty("server.port", "8080");
        properties.setProperty("debug.mode", "true");

        int port = Integer.parseInt(properties.getProperty("server.port"));
        boolean debug = Boolean.parseBoolean(properties.getProperty("debug.mode"));

        System.out.println("ポート番号: " + port);
        System.out.println("デバッグモード: " + debug);
    }
}

このように変換して利用することで、Javaアプリケーション設定やサーバー設定管理が柔軟になります。初心者の方は文字列で取得されるという点を必ず覚えておきましょう。

7. プロパティファイルを使うメリットと実務での活用

7. プロパティファイルを使うメリットと実務での活用
7. プロパティファイルを使うメリットと実務での活用

Javaのプロパティファイルを活用することで、設定値の外部化、環境別設定切り替え、本番環境と開発環境の分離、セキュリティ向上など多くのメリットがあります。

例えば開発環境ではローカルデータベース、本番環境ではクラウドデータベースを使う場合、プロパティファイルを切り替えるだけで対応できます。これはJava開発現場では標準的な手法です。

Java初心者の方は、まずPropertiesクラスで値を読み込む基本をしっかり理解し、その後クラスパス読み込みや型変換などを習得していくと、より実践的なプログラミング力が身につきます。

まとめ

まとめ
まとめ

今回は、Javaのプロパティファイルの使い方を中心に、設定ファイルの基本構造からPropertiesクラスを使った読み込み方法、デフォルト値の指定方法、クラスパス経由での読み込み、さらに数値や真偽値への型変換までを体系的に解説しました。Javaにおける外部設定ファイルの活用は、実務レベルのアプリケーション開発では欠かせない重要な知識です。

Javaのプロパティファイルは、アプリケーション設定管理、データベース接続情報の外部化、環境別設定切り替え、セキュリティ対策など、多くの場面で利用されます。特にJava初心者の方が最初につまずきやすいポイントは、設定値がすべて文字列として取得される点と、例外処理を適切に行う必要がある点です。この基本を正しく理解することで、安全で保守性の高いJavaプログラムを書くことができるようになります。

また、java.util.Propertiesクラスを使うことで、キーと値のペアを簡単に管理できることも大きなメリットです。getPropertyメソッドを使えば、指定したキーに対応する値を安全に取得できますし、第二引数にデフォルト値を指定することで、設定漏れによるエラーを防ぐことも可能です。これは本番環境と開発環境を切り替える際にも非常に有効なテクニックです。

さらに、クラスパスからプロパティファイルを読み込む方法を理解しておくことで、jarファイルに含めた設定ファイルの管理や、ビルド後のアプリケーション運用にも対応できます。Javaプロジェクト構成を理解する上でも、クラスローダーを利用した設定ファイル読み込みは重要な知識です。

数値変換や真偽値変換の処理も忘れてはいけません。ポート番号やタイムアウト時間、デバッグモードの有効無効など、実務で扱う設定値の多くは数値や論理値です。Integer.parseIntやBoolean.parseBooleanを組み合わせることで、実践的なJava設定管理が可能になります。

Javaプロパティファイルの使い方を正しく理解することは、単なる設定読み込み技術の習得にとどまりません。アプリケーション設計、保守性向上、再利用性向上、セキュリティ強化といった観点からも非常に重要です。Java開発における基礎力を高めるためにも、今回学んだ内容を何度も実装しながら身につけていきましょう。

まとめのサンプルプログラム

ここでは、プロパティファイルを読み込み、デフォルト値を設定し、数値変換と真偽値変換までを一括で行う総合的なサンプルコードを紹介します。Java設定ファイル管理の復習として確認してください。


import java.io.InputStream;
import java.util.Properties;

public class PropertySummaryExample {
    public static void main(String[] args) throws Exception {

        Properties properties = new Properties();

        InputStream is = PropertySummaryExample.class
                .getClassLoader()
                .getResourceAsStream("config.properties");

        properties.load(is);

        String appName = properties.getProperty("app.name", "DefaultApp");
        int port = Integer.parseInt(
                properties.getProperty("server.port", "8080"));
        boolean debug = Boolean.parseBoolean(
                properties.getProperty("debug.mode", "false"));

        System.out.println("アプリ名: " + appName);
        System.out.println("ポート番号: " + port);
        System.out.println("デバッグモード: " + debug);
    }
}

このように、Javaのプロパティファイルを活用すれば、アプリケーション設定の外部化、環境設定の切り替え、柔軟な値管理が可能になります。Java初心者の方は、まずは小さなプログラムで繰り返し練習し、Propertiesクラスの基本操作を確実に理解することが大切です。

先生と生徒の振り返り会話

生徒

「Javaのプロパティファイルは、設定値を外部ファイルに分けて管理するための仕組みだと理解しました。ソースコードに直接書かなくてよいのはとても便利ですね。」

先生

「その通りです。Javaアプリケーション設定管理では、外部設定ファイルを使うことが基本です。特にデータベース接続情報や環境別設定は、プロパティファイルで管理するのが一般的です。」

生徒

「Propertiesクラスを使ってgetPropertyで値を取得するのですね。デフォルト値も指定できるので、安全に読み込めると分かりました。」

先生

「はい。さらに文字列として取得されること、数値や真偽値に変換する必要があることも重要です。Integer.parseIntやBoolean.parseBooleanは実務でも頻繁に使います。」

生徒

「クラスパスから読み込む方法も学びました。jarファイルに含めたプロパティファイルも読み込めるのですね。」

先生

「その理解で完璧です。Javaプロパティファイルの使い方をしっかり身につければ、実務レベルのJava開発に一歩近づきます。これからも設定管理と外部化の考え方を大切にしてください。」

Javaのプロパティファイルの一覧へ
新着記事
Flutter
Flutterでのリポジトリパターンの実装例
Flutterでリポジトリパターンを実装する方法を完全解説!初心者向けアーキテクチャ設計入門
Java
Java の Objects クラスを使って null チェックを簡単にする方法
JavaのObjectsクラスの使い方を完全ガイド!nullチェックを簡単・安全に行う方法
Java
Java の UUID クラスを使って一意の識別子を作成する方法
JavaのUUIDクラスの使い方を完全ガイド!初心者でもわかる一意な識別子の作成方法
Java
Java の古い日付クラス(Date, Calendar)と新しい日付 API の違い
JavaのDateとCalendarと新しい日付APIの違いとは?初心者向け完全ガイド
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク