通过全局变量在运行时迭代特定类

时间:2012-03-03 20:55:22

标签: java servlets annotations

我正在构建依赖注入框架,该过程的一部分包括循环遍历类路径中的所有类文件,并在枚举对象中存储使用特定注释注释的类。在依赖注入方面,当加载一个类时,它会找到所有@inject符号,然后搜索包含@injectResource表示法的所有类,然后返回执行DI部分所需的方法值。

我的问题是,在编译时构建枚举类列表似乎更合理,因此当我的注入字段需要搜索这些类时,我不必每次都搜索项目中的每个类时间。

我想我将在编译时通过servlet配置构建类列表,但是我可以在哪里存储这个" global"列表,以便我可以在整个项目中反复访问它?

在我的脑海中,我想在编译时我将创建一个包含枚举列表的静态类,但我不喜欢使用静态类,我不确定是否这是最佳方法。

1 个答案:

答案 0 :(得分:-1)

顺便说一句,您可以使用Servlet Context,为什么每次创建新类时都要重新扫描所有类?为什么不保留对类的引用,并使用它们(而不是硬编码类列表)?