首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SpringBoot的@Value注解设置默认值

在Spring Boot中,如果使用@Value注解对属性进行赋值,但如果在配置文件或启动参数中未指定对应的参数值,则会抛出异常。异常信息往往是对应注入属性的类实例化失败。...此时,需要对@Value对应的值进行配置,或设置默认值。...设置方法如下: @RestController public class ConfigController { // ①未指定默认值 @Value("${user.username}") private...String username; // ②指定默认值为“unknown” @Value("${projectName:unknown}") private String projectName...而针对第二种方式,通过“:”指定如果获取不到该参数值时所使用的默认值,则启动时不会出现异常信息。 原文链接:《SpringBoot的@Value注解设置默认值

14.8K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SpringBoot系列之@Value和@ConfigurationProperties

    继上一篇博客SpringBoot系列之YAML配置用法之后,再写一篇@Value、@ConfigurationProperties的对比博客 这两个主键都是可以获取配置文件属性的,不过是有比较大的区别的...去读 user: userName: root is-admin: true @Value("${userName}") private String userName; @Value...user: isOnline: #{1*1} debug了一下,发现不能正常计算 ok,验证@value @Value("#{1*1}") private Long isOnline; junit...验证 @AssertTrue @Value("${isAdmin}") private boolean isAdmin; 验证,校验发现不起效 复杂类型封装 ok,验证@Value是否支持对象类型和...list类型,在上篇博客,很显然验证了@ConfigurationProperties是支持对象类型和list类型获取的 所以,本博客验证一下@Value是否支持就可以 @Value("${maps}"

    79720

    SpringBoot之Spring@Value属性注入使用详解

    下面看具体实例场景的应用: /** * 注入普通字符串,相当于直接给属性默认值 */ @Value("程序新视界") private String wechatSubscription; /**...默认值注入 无论使用#{}或${}进行属性的注入,当无法获取对应值时需要设置默认值,可以采用如下方式来进行设置。.../** * 如果属性中未配置ip,则使用默认值 */ @Value("${ip:127.0.0.1}") private String ip; /** * 如果系统属性中未获取到port的值,则使用...:'8888'}") private String port; 其中${}中直接使用“:”对未定义或为空的值进行默认值设置,而#{}则需要使用“?:”对未设置的属性进行默认值设置。...原文链接:《SpringBoot之Spring@Value属性注入使用详解》

    6.3K20

    SpringBoot 自定义注解 + AOP实现参数效验,默认值赋值

    同时,对于参数中某些项缺失的情况,我们需要给这些缺失的参数设置默认值。这时候,SpringBoot的自定义注解和AOP技术就派上用场了。...本文将介绍如何使用SpringBoot的自定义注解和AOP技术,实现参数效验和默认值赋值的功能。...首先,我们将介绍一下SpringBoot自定义注解和AOP的相关知识,然后,我们再详细介绍如何使用这两个工具来完成参数效验和默认值赋值。...这个注解是用于参数效验和默认值赋值的。AOP技术在SpringBoot中,我们可以通过AOP(面向切面编程)技术来实现对方法的拦截和处理。...总结本文介绍了如何使用SpringBoot自定义注解和AOP技术来实现参数效验和默认值赋值的功能。通过自定义注解和AOP技术,我们可以方便地对参数进行效验和默认值赋值,提高了代码的可读性和可维护性。

    2.7K60

    springBoot读取配置文件的注解@ConfigurationProperties及与@Value区别

    本文基于的springboot版本如下: plugins { id 'org.springframework.boot' version '2.4.2' id 'io.spring.dependency-management...2.配置Annotation Processor 在使用了ConfigurationProperties注解之后,需要注意的是,当我们在idea中打开Person类,会出现红色的提示“SpringBoot...该提示的意思是,没有配置springboot对应的注解处理器(Annotation Processor)。...3.通过@Value注解实现 如果我们不采用@ConfigurationProperties,那么我们仍然能够通过@Value注解来实现上述功能。但是@value比较复杂,需要在每个属性上面去指定。...("${person.name}") private String name; @Value("${person.age}") private Integer age; @Value("${person.sex

    1.8K30
    领券