//①通過類裝載器獲取EvalComprehensiveBo類對象
ClassLoader loader = Thread.currentThread().getContextClassLoader();
Class clazz =null;
try {
clazz = loader.loadClass("com.lovcreate.atom.biz.api.bo.evaluate.EvalComprehensiveBo");
}catch (ClassNotFoundException e) {
logger.info("ClassNotFoundException", e.getMessage());
}
//②獲取類的默認構造器對象并通過它實例化EvalComprehensiveBo
Constructor cons =null;
try {
cons = clazz.getDeclaredConstructor((Class[])null);
}catch (NoSuchMethodException e) {
logger.info("NoSuchMethodException", e.getMessage());
}
EvalComprehensiveBo evalComprehensiveBo =null;
try {
evalComprehensiveBo = (EvalComprehensiveBo) cons.newInstance();
}catch (Exception e) {
logger.info("evalComprehensiveBoException", e.getMessage());
}
Integer count =evalComprehensiveMapper.queryCount(deptName, years, type);
//③通過反射方法設置屬性
Method setProperty =null;
try {
setProperty = clazz.getMethod(property, Integer.class);
}catch (NoSuchMethodException e) {
logger.info("NoSuchMethodException", e.getMessage());
}
try {
setProperty.invoke(evalComprehensiveBo, count);
}catch (Exception e) {
logger.info("setPropertyException", e.getMessage());
}