定数ファイルからキーと値のペアを読み取ろうとしています。クラス名とフィールド名を直接使用する場合は機能しますが、クラスとフィールドの組み合わせを動的に作成する場合は機能しません。この問題を交渉する方法は?
以下は私の定数ファイルです
Public interface Constants
{
String DEV_SELECT_STATEMENT = “DEV_INT_SQL_SELECT_STATEMENT”
String INT_SELECT_STATEMENT = “DEV_INT_SQL_SELECT_STATEMENT”
}
Query.propertiesファイル
DEV_INT_SQL_SELECT_STATEMENT = “SELECT * FROM SOME TABLE”;
JAVAクラスファイル//これは機能します
public someClass
{
public someMethod() //This works
{
String sqlStatement = QueryLoader.getStatement(Constants.DEV_SELECT_STATEMENT);
System.out.println("The key is :" + Constants. DEV_SELECT_STATEMENT);
System.out.println(“SqlStatement is : “ + sqlStatement);
}
}
キーは次のとおりです:DEV_INT_SQL_SELECT_STATEMENT
SqlStatementは:SELECT * FROM SOME TABLE
public someClass //This does not work
{
public someMethod(String env) //This does not work
{
String queryKey = “Constants” +env + “_SELECT_STATEMENT “;
System.out.println(“The Key is : “ + queryKey);
String sqlStatement = QueryLoader.getStatement(queryKey);
System.out.println(“SqlStatement is : “ + sqlStatement);
}
キーは:Constants.DEV_SELECT_STATEMENT //これは値ではなく、文字列を提供します
SqlStatementは:null