1.概览

Spring 的 @Vaule 注解提供了一种便捷的方法可以让属性值注入到组件中,当属性值不存在的时候提供一个默认值也是非常好用的

这就是我们这篇文章所专注的,如何给 @Vaule 注解指定一个默认值。对于更多的关于 @Vaule 的教程看这篇文章

2.String 默认值

让我们看看对于 String 类型的值,给定一个默认值得基础语法

@Value("${some.key:my default value}")

private String stringWithDefaultValue;

如果 some.key 无法解析,那么 stringWithDefaultValue 的值会被设置为默认值 "my default value".

相似的,我们也可以用如下方法,设置一个空字符串作为默认值

@Value("${some.key:})"

private String stringWithBlankDefaultValue;

3.原始类型

给像 int 或者 boolean 的原始类型赋一个默认值,我们使用文字值:

@Value("${some.key:true}")

private boolean booleanWithDefaultValue;

@Value("${some.key:42}")

private int intWithDefaultValue;

如果愿意,可以用原始类型的包装类型来代替,例如 Boolean 和 Integer

4.数组

我们可以使用逗号分隔的 list 来用于数组的注入,如下

@Value("${some.key:one,two,three}")

private String[] stringArrayWithDefaults;

@Value("${some.key:1,2,3}")

private int[] intArrayWithDefaults;

在上面第一个例子, 值为 "one", "two", 和 "three" 的数组将被注入到 stringArrayWithDefaults 中

在上面第二个例子, 值为 1, 2, 和 3 的数组将被注入 intArrayWithDefaults 中

5.使用SpEL表达式

我们也可以使用 Spring Expression Language (SpEL) 去指定一个表达式或者默认值

在下面的例子中,我们期望 some.system.key 被设置为系统值,如果他不存在则我们想用 "my default system property value"

@Value("#{systemProperties['some.key'] ?: 'my default system property value'}")

private String spelWithDefaultValue;

6.总结

在这篇文章中,我们研究了如何为使用Spring的@Value注释注入的属性设置默认值。

像往常一样,本文中使用的所有代码示例都可以在GitHub项目中找到。

到此这篇关于Spring @Value 设置默认值的实现的文章就介绍到这了,更多相关Spring @Value 设置默认值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

java设置默认值_Spring @Value 设置默认值的实现相关推荐

  1. java的下拉框的设置默认值,html下拉选项属性 html下拉框怎么设置默认值?

    html下拉框怎么设置默认值 设置selected属性就可以,具体的用法,首先打开hbuilder软件,新建一个html文档,里面写入一个select下拉框: 然后给select中一个option设置 ...

  2. ajax默认什么方法,ajax设置默认值ajaxSetup()方法

    $(function(){ //设置全局 jQuery Ajax全局参数 $.ajaxSetup({ type:"POST", async:false, cache:false, ...

  3. jpa mysql timestamp_Java JPA设置默认值、Timestamp设置、自动获取时间

    设置默认值 @Column(name="state",columnDefinition="tinyint default 0") private Integer ...

  4. MySQL 字段默认值该如何设置

    MySQL 字段默认值该如何设置 前言: 在 MySQL 中,我们可以为表字段设置默认值,在表中插入一条新记录时,如果没有为某个字段赋值,系统就会自动为这个字段插入默认值.关于默认值,有些知识还是需要 ...

  5. HTML如何设置select下拉框的默认值?

    本篇文章给大家介绍设置select下拉框默认值的方式.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 我们可以在所需选项上使用"selected"属性来设置sel ...

  6. jQuery设置radio默认选中状态及获取选中值

    jQuery设置radio默认选中状态及获取选中值 //获取选中值 var rechargeType = $("input[name='rechargeType']:checked" ...

  7. 小猿圈Java学习之通过命令行设置属性值

    Hello大家好,今天小猿圈给大家分享如何进行属性配置文件详情,首先给大家讲如何通过命令行设置属性值nullem;text-align:left">相信使用过一段时间Spring Bo ...

  8. java变量默认值_Java变量的默认值和初始化

    Java变量的默认值和初始化 学习自 <Thinking In Java> 变量的默认值 注意只有成员变量才有默认值,而局部变量必须要赋初值.为什么会这么设计,下面会讨论. 关于各种基础类 ...

  9. java对象默认值_java对象的默认值

    2.4.1 字段和方法 定义一个类时(我们在Java里的全部工作就是定义类.制作那些类的对象以及将消息发给那些对象),可在自己的类里设置两种类型的元素:数据成员(有时也叫"字段") ...

最新文章

  1. 征途猎魔mysql数据库_猎魔征途-猎魔征途官方首测版 - 超好玩
  2. 在OR项目中使用火焰图
  3. linux 7.0修改网卡ip,CentOS7修改网卡为静态IP
  4. hiveserver2启动不起来_给爱车配个充电宝,70迈汽车应急启动电源,让你远离搭电小广告...
  5. 从现在开始,争取记录每天所学到的、所感受到的、所遇见到的点点滴滴!
  6. 反向传播算法(backpropagation)
  7. Eclipse 中Access restriction: The type ‘XXX’ is not API
  8. navicat连接mangoDB数据库并使用
  9. mysql如何修改字段名字_mysql如何修改字段名称
  10. cada0图纸框_CAD图框尺寸大全
  11. 优思学院|精益六西格玛中的8大浪费是什么?
  12. 今有物不知其数三三数之JAVA_今有物不知其数.三三数之剩二.五五数之剩三.七七数之剩二.问物几何? 题目和参考答案——青夏教育精英家教网——...
  13. 按压式按摩靠背的设计
  14. [phyton]文件的简单读写练习
  15. 免费:轻松实现在微信中直接下载APK
  16. 基于微信公众号的答题投票系统——项目开发心得体会记录
  17. MySQL 语法整理(2)
  18. 初识Java-概述与环境搭建
  19. jmeter创建快捷方式到桌面
  20. 华医通显示连接服务器失败,华医通app怎么用 华医通app使用教程

热门文章

  1. linux下oracle11G DG搭建(三):围绕备库搭建操作
  2. 5G新机难救董明珠“手机梦”
  3. java毕业设计少儿编程教育网站系统mybatis+源码+调试部署+系统+数据库+lw
  4. 乐山农业银行机器人_智能机器人“小新”亮相农业银行
  5. html文件怎么转换mp4,免费swf格式转换器,swf转换mp4的简易方法
  6. 小红书 程序员七夕礼物 - 微信每日早安推送,简单无坑的最新教程
  7. 数字孪生管理产品在智慧医院方面的整体解决方案
  8. Linux系统:常用Linux命令大全(在座的各位赶紧收藏,滑稽.jpg)
  9. C语言读取bmp图像
  10. Linux-开发与管理 P1 shell编程