@Value设置默认值以及为static变量赋值

Bertha 。 2023-10-13 08:24 95阅读 0赞

目录

    • 一、@Value用法
      • 1、赋值时没有指定默认值
      • 2、赋值时指定默认值
      • 3、为静态变量赋值

一、@Value用法

1、赋值时没有指定默认值

  1. @Value("${server.port}")
  2. private int serverPort;

配置文件对应配置如下

  1. server.port=8080

如上,程序启动时会自动将配置文件对应的属性值赋值给对应的变量

注:在没有指定默认值的情况下,如果忘记在配置文件配置对应的属性,在程序启动时会报错,导致程序启动失败,这种情况可以为@Value指定默认值,来避免该问题


2、赋值时指定默认值

  1. @Value("${server.port:8080}")
  2. private int serverPort;

如上,如果在配置文件没有配置对应的属性,则使用8080作为默认值


3、为静态变量赋值

在某些特定的情况,需要为static的变量赋值,不能直接将@Value使用到静态变量上,这样无法将配置值注入到该静态变量

可以使用Set方法为静态变量赋值

  1. private static int serverPort;
  2. @Value("${server.port}")
  3. public void setServerPort(Integer serverPort) {
  4. 类名.serverPort = serverPort;
  5. }

注:以上方法同样可以指定默认值

发表评论

表情:
评论列表 (有 0 条评论,95人围观)

还没有评论,来说两句吧...

相关阅读