annotation parser

    public Map<String, String> loadVlaue(Class annotationClasss,
                                         String annotationField, String className) throws Exception {

        System.out.println("Processing Annotation class name === "+annotationClasss.getName());
        System.out.println("Processing Annotation class attribute name === "+annotationField);
        System.out.println("Processing Annotation's calling class name === "+className);
        Map<String, String> map = new HashMap<String, String>();
        Method[] methods = Class.forName(className).getDeclaredMethods();
        for (Method method : methods) {
            if (method.isAnnotationPresent(annotationClasss)) {
                Annotation p = method.getAnnotation(annotationClasss);
                Method m = p.getClass()
                        .getDeclaredMethod(annotationField, null);
                boolean value = (boolean) m.invoke(p, null);
                System.out.println("Annotation value === " + value);
//                String[] values = (String[]) m.invoke(p, null);
//                for (String key : values) {
// System.out.println("Annotation value === " + key);
//                    map.put(key, key);
//                }
            }
        }
//        System.out.println("map数量  === " + map.size());
        return map;
    }

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326351639&siteId=291194637