返回顶部
首页 > 资讯 > 精选 >SpringBoot常用计量与bean属性校验和进制数据转换规则是什么
  • 412
分享到

SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

2023-07-04 10:07:27 412人浏览 安东尼
摘要

这篇文章主要介绍“SpringBoot常用计量与bean属性校验和进制数据转换规则是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springBoot常用计量与bean属性校验和进制数据转换规则

这篇文章主要介绍“SpringBoot常用计量与bean属性校验和进制数据转换规则是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springBoot常用计量与bean属性校验和进制数据转换规则是什么”文章能帮助大家解决问题。

常用计量单位

SpringBoot支持jdk8提供的时间与空间计量单位

@Data  //lombok省去get/set/toString@ConfigurationProperties(prefix = "servers") //配置文件的位置,对应的属性注入public class ServerConfig {    private String ipAddress;    private int port;    private String detail;//时间    private Duration serverTimeOut;//存储空间    private DataSize dataSize;}

配置文件中可以在之后直接加单位

servers:
 ipAddress: 192.158.0.1
 port: 1234
 detail: zhangsan
 serverTimeOut: 10s
 dataSize: 4MB

运行结果

SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

或者不在配置文件加单位,在实体类中加注解

SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

bean属性校验

开启Bean数据校验

①添加jsR303规范坐标与Hibernate校验框架对应坐标

<!--        提供规范的接口-->        <dependency>            <groupId>javax.validation</groupId>            <artifactId>validation-api</artifactId>        </dependency><!--        对上面接口的实现-->        <dependency>            <groupId>org.hibernate.validator</groupId>            <artifactId>hibernate-validator</artifactId>        </dependency>

②:@Validated开启校验功能

③:设置校验规则

@Data  //lombok省去get/set/toString//@Component //交给spring容器管理@ConfigurationProperties(prefix = "servers") //配置文件的位置,对应的属性注入//②开启校验@Validatedpublic class ServerConfig {    private String ipAddress;//    ③设置校验规则@Max(value=9000,message = "最大不能超过9000")@Min(value=100,message = "最大不能低于100")    private int port;    private String detail;    private Duration serverTimeOut;    private DataSize dataSize;}

运行之后,当设置的校验不在这个范围则会报错

SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

小结:

启用Bean属性校验

导入JSR303与Hibernate校验框架坐标

使用@Validated注解启用校验功能

使用具体校验规则规范数据校验格式

进制数据转换规则

配置文件中的数字存在进制转换

当以0开头,且后续为(0-7),会自动转为八进制

当以0x开头,且后续为(0-9,a-f)会自动转为十六进制

application.yml下

mysql:
 PassWord1: 01234
 Password2: 0x2345
 Password3: 0187
 Password4: "01234"

test类

package com;import com.pojo.ServerConfig;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Value;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.context.ApplicationContext;import org.springframework.context.ConfigurableApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;@SpringBootTestclass Springboot11ConfigurationApplicationTests {    @Value("${Mysql.Password1}")    private String password1;    @Value("${mysql.Password2}")    private String password2;    @Value("${mysql.Password3}")    private String password3;    @Value("${mysql.Password4}")    private String password4;    @Test    void contextLoads() {        System.out.println(password1);        System.out.println(password2);        System.out.println(password3);        System.out.println(password4);    }}

运行结果:

SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

可以看出当加上双引号不会发生进制转换,所以在进行这类操作时,应当加上双引号。当十进制以0开头,会到之后

yaml字面值表达式方式

SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

关于“SpringBoot常用计量与bean属性校验和进制数据转换规则是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: SpringBoot常用计量与bean属性校验和进制数据转换规则是什么

本文链接: https://lsjlt.com/news/344343.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作