@Value("${my.property}")
private String prop;
但怎么做?
使用下面的bean每隔1秒重新加载config.properties。
@Component
public class PropertyLoader {
@Autowired
private StandardEnvironment environment;
@Scheduled(fixedRate=1000)
public void reload() throws IOException {
MutablePropertySources propertySources = environment.getPropertySources();
PropertySource<?> resourcePropertySource = propertySources.get("class path resource [config.properties]");
Properties properties = new Properties();
InputStream inputStream = getClass().getResourceAsStream("/config.properties");
properties.load(inputStream);
inputStream.close();
propertySources.replace("class path resource [config.properties]", new PropertiesPropertySource("class path resource [config.properties]", properties));
}
}
您的主要配置将如下所示:
@EnableScheduling
@PropertySource("classpath:/config.properties")
public class HelloWorldConfig {
}
而不是使用@value,每次您想要使用的最新属性
environment.get("my.property");
问题内容: 我有一个申请。在运行文件夹下,还有一个附加的配置文件: 应用程序启动时,它将使用文件中的值并将其注入到: 问题:如何触发这些属性的重新加载?我希望能够在运行时更改配置,并更新字段(也许可以通过在应用程序内部调用servlet 触发更新)。 但是如何? 问题答案: 使用下面的bean每1秒重新加载config.properties。 你的主要配置如下所示: 而不是使用@Value,每次你
问题内容: 我在Spring 3中使用属性文件。当Spring初始化其contex时,它将加载属性文件,并将其放入带有@Value批注的所有bean中。 我希望有可能更新文件中的某些属性,并在服务器上公开一个JMX,该JMX将新属性重新加载到Spring中-无需重新启动服务器并重新加载其上下文。 我可以通过使用一些 Spring方法 来重新加载属性并将其填充到所有bean中来实现此功能,还是应该自
对于spring framework,我想手动重新加载属性文件中的数据。实际上,当我手动运行这个servlet文件时,我必须编写一个重新加载servlet来手动重新加载数据。 我已经为MessageSource定义了Spring配置。 但不希望在特定时间段自动加载,例如,设置时可以自动加载: 我以前尝试过clear缓存(),但没有自动加载。
在Spring Boot中,有一个属性文件application.property,与这个属性一起,我创建了一个额外的属性文件,名为MyOwnProp.properties。 如何在中加载?表示如何在Application.properties中包含另一个命名属性? 有什么进展吗?
我想在spring boot web Project中使用来自Application.Properties的@Value注释获取值。我认为我可以使用@value注释,因为我认为application.properties中的变量是动态加载的。但是当我只写@value注释时,它就不起作用了。 我在申请中有一个属性。poperties 我如何解决这个问题??
问题内容: 我有一个简单的应用程序,其中我使用几个属性文件来获取其他用户编辑的内容(指向网站的链接等)。 我加载属性的类如下所示: 一些属性文件: 这可以正常工作,但是如果我对properties-file进行更改,则必须重新加载应用程序以可视化所做的任何更改。 如果我将位置移动到磁盘而不是类路径,是否可以定期或手动重新加载?我不希望更改时自动完成此操作,因为我想控制何时完成/更新。 问题答案: