开发者

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

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

    @Value用法

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

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

    配置文件对应配置如下

    server.port=8080

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

    注:

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

    2、赋值时指定默认值

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

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

    3、为静态变量赋值

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

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

    private static int serverPort;
    @Value("${server.po编程客栈rt}")
    public void setS编程客栈erverPort(Integer serverPort) {
    	类名.serverPort = serverPort;
    }

    注:

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

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜