gpt4 book ai didi

java - 有没有一种方法可以在没有 xml 或属性文件的情况下将 java 变量/对象存储在应用程序上下文中

转载 作者:搜寻专家 更新时间:2023-11-01 03:32:54 25 4
gpt4 key购买 nike

我想在 spring boot 应用程序的应用程序上下文中存储一个特定的变量(字符串或对象)。但我不想使用 xml 或属性文件来存储它。

将有一个函数将数据存储在应用程序上下文中。我应该能够检索它、修改它、删除它或添加更多数据。

基本上我想在初始化完成后将数据存储在应用程序上下文中。

最佳答案

如果您创建一个类并在其上放置@Configuration 注释,并使用@Bean 注释声明一些bean,它们将成为应用程序管理的bean。

@Configuration
public class ConfigurationClass {

@Bean("myString")
public String getString() {
return "Hello World";
}
}

然后您可以在代码的任何位置调用 AnnotationConfigWebApplicationContext.getBean("myString") 来获取您的 bean。

现在可能会出现并发问题(如 davidxxx 所述)。为此,您可以使用 SimpleThreadScope。看这个link了解如何在应用程序上下文中注册它以及在何处放置该注释(或通过谷歌搜索)。

或者,如果您不想处理该问题,那么 @Scope("request") 应该会有所帮助。带有 @Scope("request") 的 bean 会为每个新的传入请求创建,因此它的线程安全性得到保证,因为它会在每次新请求传入时创建。

关于java - 有没有一种方法可以在没有 xml 或属性文件的情况下将 java 变量/对象存储在应用程序上下文中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43575123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com