public class AnnotationScanner { private static List<Class<?>> scannedClasses = new ArrayList<>(); public static void scanClasses(File directory) { for (File file : directory.listFiles()) { if (file.isDirectory()) { scanClasses(file); } else if (file.getName().endsWith(".class")) { Class<?> clazz = parseClass(file); scannedClasses.add(clazz); } } } public static boolean isClassScanned(Class<?> clazz) { return scannedClasses.contains(clazz); } } @Activate public class MyAnnotationProcessor { private boolean initialized = false; @Reference private MyService myService; @PostConstruct public void init() { if (shouldLoad()) { initialized = true; } } public void processAnnotations() { if (!initialized) { return; } } private boolean shouldLoad() { } } public class MyCache { private static Map<String, Object> cache = new HashMap<>(); public static <T> T get(String key) { return (T) cache.get(key); } public static void put(String key, Object value) { cache.put(key, value); } }


上一篇:
下一篇:
切换中文