所以我有下面这个用例-
我需要自定义引导上下文以从特定文件中读取配置服务器所在的uri,然后将该uri注入属性spring.cloud.config.uri以从configServer获取属性。
我一直在研究Spring云共享空间上的留档,并尝试了自定义Bootstrap属性源。不幸的是,这不起作用,因为这是应用程序上下文的另一个属性源,而不是引导上下文(bootstrap.yml或属性)的属性源。
到目前为止,我唯一的解决方案可能不是最优雅的解决方案是在我们运行Spring Application之前将uri属性设置为系统属性。
因此,如下所示。
public static void main(String args[]) {
* Read properties from file and set as system properties*
System.setProperty("uri","http://localhost:8097");
SpringApplication.run(Application.class,args);
}
然后在引导中引用上述属性。属性为-
spring.cloud.config.uri=${uri}
这是可行的,但我还是想用一种更适合Spring的方式。
提前感谢。
我认为您可以使用run arg参数并给出一个默认值,如下所示:
spring.cloud.config.uri=${config.uri:http://localhost:8097}
java jar xxx.jar --config.uri=http://localhost:8099
不幸的是,这是不可能的。
您可以使用配置更改bootstrap.yml/properties的位置
spring.cloud.bootstrap.location
但是,您不能添加bean来读取将成为Bootstrap上下文一部分的属性,因为Bootstrap上下文将是用户自己创建的最高级祖先的父级。
在我的项目中有2个资源属性 1.application.properties 2. 应用开发.性能 此类使用开发的值属性 我使用 application-development.properties 作为我的项目资源 因此,我使用以下命令运行该项目: < code > mvn spring-boot:run-D spring . profiles . active = development 但是
文本文件中有两个值,如下所示: 我想将这两个值保存为两个自定义属性,以便我可以在肥皂请求中使用它。 这是我到目前为止所拥有的,但没有运气: 我收到以下错误:
我们正在从1.3.0升级Spring引导版本。发布到2.3.12。释放。根据旧版本,yml文件使用以下代码片段读取 在src/main/Resources/config/中配置文件 myconf源中的内容。yml 相应的测试类 更改到新版本后,它会抛出一个错误。 如果我删除属性,spring将如何知道类MyConfigProperties必须读取MyConfigSource。yml 另外,在运行测
在Karaf中,包有没有办法从另一个包读取属性文件? 我有 bundle1,它包含 bundle2 使用的一些类(bundle1 通过 maven-bundle-plugin 导出包含这些类的包,bundle2 导入它)。但是 bundle2 还需要使用 bundle1 中的属性文件。除了类之外,还有没有办法从 bundle1 访问一个文件? 据我所知,一种选择是通过features文件将属性部署
问题内容: 是否可以通过读取另一个bean的属性来设置一个bean的属性?例如,假设我有: 我希望Spring实例化这两个类,并调用A的setList方法,并传入调用B的getList方法的结果。Spring配置可能类似于: las,这种伪造的XML不起作用。 为什么不将B注入A?因为我不想引入额外的依赖关系。A仅依赖列表,而不依赖B。 问题答案: 如果你使用的是spring 3.0,还可以使用新
问题内容: 我正在尝试从我的wildfly配置文件夹中的属性文件中读取特定于部署的信息。我尝试了这个: 但是显然这不起作用,因为配置文件夹不再位于类路径中。现在我找不到一种简单的方法。我最喜欢的是这样的: 到目前为止,我在网上找到的唯一解决方案是制作自己的OSGi模块,但是我相信必须有一种更简单的方法来实现(一个没有OSGi!)。谁能告诉我如何? 问题答案: 如果要从配置目录(例如或)中显式读取文