2017-06-06 21 views
-1

.propertiesファイルとenvironment variableファイルの相違点は、javaです。

.propertiesファイルは、このように引数を渡す
プロパティファイルと環境変数

java -jar -arg1=text1 -arg2=text2 myJAR.jar 
+0

はルックスを使用して簡単です。 – CollinD

+0

コマンドラインで-Dを使用する必要があります。あなたは多くのプロパティを持っている場合、それは非効率的です。 –

答えて

0

環境変数

arg1=text1 

arg2=text2 

ファイル実行時にオーバーライドではありません。

java -jar -arg1=text1 -arg2=text2 myJAR.jar 

値はPASあるとしてアプリケーションの起動時にsed。

値を変更するには、アプリケーションを再起動する必要があります。
さらに、多くの引数を渡すとエラーが発生する可能性があります。このように、

大切な特性は、実行時にオーバーライドすることができる:

.Properties file 
arg1=text1 
arg2=text2 

値は、アプリケーションの実行時に修正することができる外部ファイルに配置されています。もちろん、ランタイム中にファイルの変更を考慮する方法は、アプリケーションで実装する必要があります。
例えば、(Joran実装と)Logbackは、実行時にLogbackの設定ファイルを変更する方法 を提供します:propertiesファイルは、プロパティのリストで構成され、一方、それが呼び出されている間 https://logback.qos.ch/manual/configuration.html#joranDirectly

0

環境変数がプログラムに渡さkey-valueペアですそれらの価値と一緒に。一般に、プロパティファイルは設定値を維持するためのベストプラクティスとみなされます。理由は次のとおりです。

  • プロパティファイルは環境変数よりも読みやすくなります。また、起動スクリプトには結びついていないので、プログラムを実行している間にファイルを渡すことができます。
  • Springのようなフレームワークは、プロパティファイルからcollectionまたはmapを作成するさまざまな方法を提供します。
  • これは、異なる環境で異なるpropertiesファイル(例えば、ステージ、PRODなど)あなたはすでに二つの違いを知っているよう