【发布时间】:2012-03-03 20:55:21
【问题描述】:
我正在构建一个依赖注入框架,该过程的一部分包括遍历类路径中的所有类文件,并将使用特定注释注释的类存储在枚举对象中。在依赖注入方面,当一个类被加载时,它会找到所有的@inject 表示法,然后搜索所有包含@injectResource 表示法的类,然后返回我需要执行DI 部分的方法值。
我的问题是,在编译时构建枚举类列表似乎更合理,这样当我的注入字段需要搜索这些类时,我不必每次都搜索项目中的每个类。
我想我会在编译时通过 servlet 配置构建类列表,但是我可以在哪里存储这个“全局”列表,以便我可以在整个项目中重复访问它?
在我的脑海中,我想在编译时我将创建一个包含枚举列表的静态类,但我不喜欢使用静态类,我不确定这是否是最最佳方法。
【问题讨论】:
-
应用上下文?虽然如果它不变,谁在乎它是否是单例/“静态类”?一种或另一种方式,如果有一个单一的记录系统,它是一个单例/“静态类”/等。 -- 不要陷入认为它们永远没有用处的陷阱。
标签: java servlets annotations