を使用してprivate
メソッドをテストしていて、Reflection
を使用して呼び出しています。私が得ているエラーはjava.lang.InstantiationException
です。私はそれがClass
のインスタンスを作成していないことを知っていますが、私は何が間違っているのか分かりません。 Object object = clazz.newInstance();
は、Exception
をスローする行です。私が持っていないテストJavaリフレクションを使用したオブジェクトのインスタンス化
private int _getType(String type) {
if ("DATE".equalsIgnoreCase(type)) return Types.DATE;
if ("STRING".equalsIgnoreCase(type)) return Types.VARCHAR;
if ("INT".equalsIgnoreCase(type)) return Types.INTEGER;
if ("TIMESTAMP".equalsIgnoreCase(type)) return Types.TIMESTAMP;
return Types.NULL;
}
JUnitテスト
@Test
public void testGetType() throws Exception {
String type1 = "DATE";
String type2 = "STRING";
String type3 = "INT";
String type4 = "TIMESTAMP";
Class clazz = SpringStoredProcImpl.class;
Object object = clazz.newInstance();
Method method = object.getClass().getDeclaredMethod("getType", String.class);
method.setAccessible(true);
method.invoke(object, type1);
下
方法は、私はそれを無視してくださいまだ主張します。
ありがとうございます。
メソッド '_getType'を宣言し、' getType'を呼び出そうとします。どうしたの? – user2357112
申し訳ありませんが、それは単にタイプミスでした。それでも同じ問題があります。 –
完全なスタックトレースを追加する – Jens