六、SpringBoot配置@ConfigurationProperties与@Value区别
1.@Value的使用
三种用法

// ${key} 从环境变量、配置文件中取值
@Value("${person.last-name}")
private String lastName;
// #{Spel} Spring支持的表达式
@Value("#{11*2}")
private Integer age;
// 字面量
@Value("true")
private Boolean boss;
运行结果

2.取值比较

3.数据校验编写
下面是指定了邮箱格式,然后报错。

4.区分使用
如果只是在某个业务逻辑中获取一下配置文件中的某项值,那就用@Value
如果专门编写一个JavaBean和配置文件进行映射,那就用@ConfigurationProperties。


源码
https://files.cnblogs.com/files/jtfr/spring-boot-02-config%28%E5%85%AD%29.zip
六、SpringBoot配置@ConfigurationProperties与@Value区别的更多相关文章
- SpringBoot 配置 @ConfigurationProperties 与 @Value 区别
一.SpringBoot 配置 @ConfigurationProperties 与 @Value 区别 配置文件 yml 还是 properties 他们都能获取到值: 如果说,我们只是在某个业务逻 ...
- springboot 使用@ConfigurationProperties注入配置属性
导入依赖,让springboot支持@ConfigurationProperties 注解 <!-- 支持 @ConfigurationProperties 注解 --> <depe ...
- 【SpringBoot】SpringBoot 配置这一篇文章就够了
SpringBoot 配置文件 一.配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的: application.properties application.yml 配置文件的 ...
- springboot配置详解
springboot配置详解 Author:SimpleWu properteis文件属性参考大全 springboot默认加载配置 SpringBoot使用两种全局的配置文件,全局配置文件可以对一些 ...
- SpringBoot配置(1) 配置文件application&yml
SpringBoot配置(1) 配置文件application&yml 一.配置文件 1.1 配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的. application ...
- @ConfigurationProperties与@value区别
@ConfigurationProperties与@value区别 @ConfigurationProperties @value 功能 批量注入配置文件中的属性 一个个指定 松散绑定 支持 不支 ...
- SpringBoot基础系列-SpringBoot配置
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9990680.html SpringBoot基础系列-SpringBoot配置 概述 属性 ...
- springboot配置Druid数据源
springboot配置druid数据源 Author:SimpleWu springboot整合篇 前言 对于数据访问层,无论是Sql还是NoSql,SpringBoot默认采用整合SpringDa ...
- Springboot 配置类( @Configuration) 不能使用@Value注解从application.propertyes中加载值以及Environment为null解决方案
最近遇到个场景,需要在使用@Bean注解定义bean的时候为对象设置一些属性,比如扫描路径,因为路径经常发布新特性的时候需要修改,所以就计划着放在配置文件中,然后通过@ConfigurationPro ...
随机推荐
- <select multiple="multiple"> 数据回显
var names = yunying_name.split(","); for (var i = 0; i < names.length; i++) { names[i] ...
- extjs6.0 treepanel设置展开和设置选中
var treePanel = { id: "treeUrl", xtype: "treepanel", useArrows: true, // 节点展开+,- ...
- 【RabbitMQ】使用RabbitMQ实现延迟任务
场景一:物联网系统经常会遇到向终端下发命令,如果命令一段时间没有应答,就需要设置成超时. 场景二:订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单. 上述类似的需求是我们经常会遇见的问题. ...
- mybatis源码分析之03SqlSession的创建
在上一篇中,说到了mybatis是如何构造一个SqlSessionFactory实例的,顾名思意,SqlSessionFactory就是用于创建SqlSession的工厂类. 好,现在我们接着昨天的来 ...
- paper 167:GPU的使用Theano之tutorial
Theano之使用GPU 英文版本:http://deeplearning.net/software/theano/tutorial/using_gpu.html using the ...
- MyBank后感
MyBank系统主要的构成部分有:银行账户的初始化,开户,存款,取款,转账,查询余额,修改密码这些操作. =============================================== ...
- C++ 使用STL string 实现的split,trim,replace-修订
写个小工具函数 #include <iostream> #include <vector> using namespace std; namespace strtool { s ...
- 22 October in 614
Contest A. defile struct 自定义排序.按照题意抽象成模型模拟就可以了. 自定义排序核心代码: struct node { int x, id; } d[1000003]; bo ...
- 2018-2019-2 网络对抗技术 20165206 Exp 8 Web基础
- 2018-2019-2 网络对抗技术 20165206 Exp 8 Web基础 - 实验任务 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML,理解表单,理解GE ...
- post方式请求数据
post方式请求数据 分析: 1.将请求方式改成post conn.setRequestMethod("POST"); 2.设置连接可以输出 conn.setDoOutput(tr ...