防止将弹簧靴的分解特性改为科学计数法

时间:2019-06-11 18:39:04

标签: spring-boot properties

我有一个带有以下application.yml属性文件的Spring Boot v2.1.0.RELEASE应用程序:

example: 
  aws:
    account: 845216416540
  sqs:
    endpoint: https://sqs.us-west-2.amazonaws.com/${example.aws.account}

然后我使用如下属性:

@Component public class Example {

   @Value("${example.aws.sqs.endpoint}")
   private String endpoint;

   public void test()
   {
      System.out.println(endpoint); 
      // prints -> https://sqs.us-west-2.amazonaws.com/8.4521641654E10
   }
}
  • 不,那不是我的实际aws帐户(请给我讲课)

这是我似乎无法弄清楚的...

1)为什么默认情况下spring会以科学计数法插值帐户的值?

2)如何配置或防止这种情况发生?

1 个答案:

答案 0 :(得分:1)

Spring将值推断为数字。您可以通过在值上用引号“ 845216416540”强制将其在YAML配置中视为字符串。

此答案详细介绍了YAML约定:https://stackoverflow.com/a/22235064/13172778