我有一个类,基本上只包含一个 HashMap。
该类还有一个简单的 getter 方法,允许我的应用程序的其他部分发送“ key ”并从 map 取回值。
这很有效,但是,我不想每次需要访问它时都实例化该类,因为这个特定的数据并没有真正改变,我只想将它放在 map 中以便查询快速获得我需要的值。
我希望我的主应用程序类创建它的一个实例,然后让它自动可供我的所有其他类使用。
今天早上我读了很多关于这个的内容,但我对如何实现它感到有点困惑,我是否正在尝试做某种单例?或者我正在尝试使用某项服务?
无论如何,如果有人有我可以学习的片段 - 这真的会对我有帮助。我目前在 Spring 中对大多数内容使用注释,并且希望保持这种状态。
最佳答案
我认为你甚至可能不需要一个单独的类来保存你的 map 。直接创建您可能需要的 map bean,然后在您需要的地方 Autowiring map 。
@Configuration
public class MapConfiguration {
@Bean
public Map<String, Object> dataMap() {
// Create and return your Map here
}
}
无论您想要在哪里使用 map ,只需使用 Autowiring 即可。
@Autowired
@Qualifier("dataMap")
private Map<String, Object> dataMap;
关于java - 使类的实例在 Spring 对所有类可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43921342/