当前位置: 首页 > news >正文

@ConfigurationProperties注解对数据的自动封装

@ConfigurationProperties注解对数据的自动封装

@ConfigurationProperties可以对基本数据类型实现自动封装,可以封装格式为yyyy/MM/dd的日期

测试代码:

package aat;

import java.util.Date;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

import lombok.Data;

/**
 * 使用@ConrigurationProperties注解封装配置文件中的数据
 */
@Component
@Data
@ConfigurationProperties(prefix="author")
public class TestProperties {

    private String name;
    private Integer age;
    private String phone;
    private Boolean isboy;
    private Float ppt;
    
    private Date birthday;
    private Date birthday1;
    private Date birthday2;
    
}

配置文件信息:

author:
  name: xixihaha
  age: 1112
  phone: 1234556666
  isboy: true
  ppt: 1.3
#  birthday: 2018-1-1
#  birthday1: 20180101
#  birthday2: 2018/1/1

如果封装日期类型,需要格式为 yyyy/MM/dd,可以自动封装,如果为yyyy-MM-dd或者为yyyyMMdd都会报错:

Description:

Failed to bind properties under 'author.birthday' to java.util.Date:

    Property: author.birthday
    Value: 2018-11-11
    Origin: class path resource [application.yml]:12:13
    Reason: failed to convert java.lang.String to java.util.Date

Action:

Update your application's configuration

相关文章:

  • Java 中创建子类对象会创建父类对象么?
  • 通过PXE部署系统时报错 0xc000000f
  • RabbitMQ之消息确认机制(事务+Confirm)
  • 大屏FAQ
  • java源码 - CountDownLatch
  • 推荐几十本DBA学习的书
  • 利用 Siblings一步实现多个同级div,只改变当前点击的div样式
  • 前端笔记-201808
  • 设置PHP最长运行时间
  • zabbix添加nginx中间件监控
  • 将MWeb的文章发布到自己做的网站(超级详细)
  • SELinux 宽容模式(permissive) 强制模式(enforcing) 关闭(disabled) 几种模式之间的转换...
  • 如何把本地文件上传到gitlab上已存在的工程里
  • Spring事务隔离级别详解
  • 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑)
  • @jsonView过滤属性
  • 2017-08-04 前端日报
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • avalon2.2的VM生成过程
  • CSS实用技巧干货
  • input的行数自动增减
  • JavaScript设计模式之工厂模式
  • Java-详解HashMap
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • React Transition Group -- Transition 组件
  • vue中实现单选
  • 安装python包到指定虚拟环境
  • 扑朔迷离的属性和特性【彻底弄清】
  • 驱动程序原理
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 我有几个粽子,和一个故事
  • mysql面试题分组并合并列
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • $.ajax中的eval及dataType
  • $GOPATH/go.mod exists but should not goland
  • (10)STL算法之搜索(二) 二分查找
  • (JS基础)String 类型
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (接口封装)
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (删)Java线程同步实现一:synchronzied和wait()/notify()
  • (十)c52学习之旅-定时器实验
  • (四)模仿学习-完成后台管理页面查询
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • ***详解账号泄露:全球约1亿用户已泄露
  • .NET Framework 服务实现监控可观测性最佳实践
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .Net 应用中使用dot trace进行性能诊断
  • .net对接阿里云CSB服务
  • .NET微信公众号开发-2.0创建自定义菜单
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?