Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
1. className = "com.gooper.test.Test"
2. 호출할 메서드 이름 : runMongoQueryByClass
3. 아래는 클래스 com.gooper.test.Test에서 static 메서드인 runMongoQueryByClass를 호출하여 List<Map<String, String>>형태의 결과를 받는 예제이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | @SuppressWarnings ( "unchecked" ) private final List<Map<String, String>> getResult (String className, String[] idxVals) throws Exception { List<Map<String, String>> list = new ArrayList<Map<String, String>>(); try { Class<?> workClass = Class.forName(className); Object newObj = workClass.newInstance(); Method m = workClass.getDeclaredMethod( "runMongoQueryByClass" ); list = (List<Map<String, String>>) m.invoke(newObj); log.debug( "workClass==>" +workClass.getName()); } catch (Exception e) { log.debug(e.getMessage()); } return list; } |