当前位置: 首页 > 知识库问答 >
问题:

springboot - SpringBoot 自定义属性怎么使用占位符的问题?

姚伟
2024-05-25

SpringBoot2.7 使用自定义属性的时候,代码如下

urban:  cas:    ticket-url: http://${URBAN_CAS_TICKET_URL:10.64.9.33:8780}/cas
@Value("${urban.cas.ticket-url}")private String ticketUrl;

如果环境变量中没有设置URBAN_CAS_TICKET_URL属性的时候,打印结果如下

http://10.64.9.33:8780/cas


但是如果环境变量中设置了

URBAN_CAS_TICKET_URL=127.0.0.1:8080

打印结果就变成了

127.0.0.1:8080

这个结果不是我想要的,因为丢失了前面的http://和后面的/cas,

我想知道为什么会丢失http:///cas?或者怎么做才能不丢失.

共有1个答案

督建柏
2024-05-25
urban:  cas:    ticket-url

和环境变量URBAN_CAS_TICKET_URL是一样的,yaml被替换掉了。

 类似资料:
  • 问题内容: 有谁知道我是否应该可以在预选赛中使用属性占位符作为表达式?我似乎无法正常工作。 我正在使用Spring 3.0.4。 XML: config.properties: 问题答案: 这可行。如果仅使用默认的spring bean名称,则可以省略服务名称。serviceA与ServiceA等 XML: Props:

  • 我不明白为什么不能在Spring-Boot中向application.properties文件中注入值。外部属性添加到logging.file变量中。我有一个application.properties文件,看起来如下所示 具有相应的Spring-boot应用程序类 请注意,如果我自己注入服务器端口号,那么在注入和启动应用程序时没有任何问题。 我在这个问题上兜圈子,弄不清自己做错了什么。

  • 问题内容: 我正在使用读取属性文件。如何以编程方式访问它们(不起作用-开发时我不知道产权)? 主要问题是我无法更改文件,因为它是由“父”框架设置的 ps。很奇怪,但是回来了 问题答案: 是一个,在bean创建过程中仅是“活动的”。遇到符号时,它将尝试根据其内部属性来解决该问题,但不会使这些属性对容器可用。 就是说:类似的问题一遍又一遍地出现,建议的解决方案通常是子类化,并使Properties手动

  • 我在src/main/resources下创建了2个文件: 应用程序。属性 第一个具有从env变量中获取值的属性,而后者具有固定值。 根据这里的具体情况,我以这样的方式推出了Spring靴: 然而,不会产生任何影响,并且应用程序是局部的。属性似乎被忽略。 有什么提示吗?

  • 我有一个SpringBoot应用程序。对于Thymeleaf,对于此属性文件: 在控制器上: 在模板上: 但我在浏览器上看到:

  • 问题内容: 我有一个使用Logback的Spring Boot控制台应用程序。所有属性(针对应用程序和Logback)都被外部化为类路径中的标准application.properties文件。在应用程序本身中可以很好地拾取这些属性,但在logback.xml文件中不会拾取这些属性。在Spring Boot启动之前,似乎好像处理了logback.xml,因此未处理EL占位符。 以FileNameP