かとじゅんの技術日誌

技術の話をするところ

S2Config ほぼできた

コード少ないですが,コンフィグを管理するコンテナ(コンフィグコンテナ)とコンフィグのリーダ/ライタの実装完了.
設定ファイルはPropertiesです.クラスパスが通っていればどこに置いていてもOKです.もちろん,外部ファイルでも可.

以下のような構成であった場合,envで環境名を指定するとtest_custom.propertiesもロードされます.
そして,コンフィグコンテナからfindAllConfigValue("hoge1")とかすると,abcではなくdefが返されます.
test.propertiesは規定値として利用でき,必要に応じて上書きできるということになります.

test.properties

env=custom
hoge1=abc
hoge2=def

test_custom.properties

hoge1=def

今のところ,コンフィグコンテナは能動的に利用するインターフェイスなので,受動的に設定値を利用するためにDtoに設定値をDIできるようにしたいなと思っています.