Java プロパティ ファイルから定数を取得することはできますか? アプリケーションが開発構成ファイルを使用するか本番構成ファイルを使用するかを指示するマスター プロパティ ファイルにフラグを設定できるように、アプリケーションを開発しようとしています。
ほとんどのアプリケーションは正常に動作しますが、エンティティ クラスのデータベース テーブル マッピングで少し壁にぶつかりました。Dynamo DB を使用しているため、実際のクラス自体には次のような注釈が必要です。
@DynamoDBTable(tableName = "table_name")
public class EmailTemplates {
...
tableName 値は定数である必要があり、次を使用してプロパティ ファイルから値を取得し、それを tableName に渡そうとしています。
@DynamoDBTable(tableName = DynamoTable.TABLE_NAME)
public class EmailTemplates {
...
DynamoTable クラス:
public final class DynamoTable {
public static final String TABLE_NAME = ResourceBundle.getBundle(ResourceBundle.getBundle("ProjectStage").getString("ProjectStage")).getString("EmailTemplates");
}
残念ながら、値が定数ではないと言っているため、機能しません。単純にリテラル文字列 (つまり、「aStringValue」) を入力すると問題ありませんが、プロパティ ファイルからではありません。
注意。明確にするために、プロパティ ファイルから値を取得する上記のコードに問題はありません。問題は、定数として扱われていないことです。