私は定数ファイルからキー値のペアを読み込もうとしています。クラス名とフィールド名を直接使用すると動作しますが、クラス+フィールドの組み合わせを動的に構築すると機能しません。この問題の交渉方法DEV_INT_SQL_SELECT_STATEMENTJava定数文字列を構築してインスタンス化する
:次は、これはキーがある
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);
}
}
に動作します//私の定数は
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クラスファイルをファイルファイルであります
のSQLStatementは次のとおりです。Constants.DEV_SELECT_STATEMENTは//これは、値を与えるものではありませんが、文字列
のSQLStatementは、次のとおりです:ヌル
列挙使用する場合があります。最も簡単なアプローチではありません。 –
@Dave、これを実装するにはどうすればよいですか。提案/リンクが役立つ – Raghu
はい、これはDaveの言うとおり回避できますが、それは恐ろしいアプローチです。代わりに 'Map'を使うか、あるいは(map any any)プロパティファイルを使ってください。 –
Voo