から値を取得して、ResultSet
リフレクションを介してコンストラクターを呼び出す必要があります。Class.cast(Object) を試していましたが、常に .cast(Object) を取得しInvalidCastException
ます。
これは私が持っているものです:
Object[] args = new Object[count];
Class<?>[] arr = co.getParameterTypes();
for(i = 0; i<args.length; i++){
args[i] = arr[i].cast(rs.getObject(i+1));
}
Object t;
try {
t = co.newInstance(args);
} catch (Exception e) {
throw new RuntimeException(e);
}
return (T)t;
co はコンストラクターで、rs はResultSet
既に持っているコンストラクターです。