Spring Boot学习--从配置文件中获取随机数
2017-09-05 16:30
726 查看
废话少说,直入正题,从配置文件中获取符合规则的随机数。
在配置文件中直接加入以下代码,我放到application.properties中的:
通过@Value注解在代码中获取:
CommandLineRunner接口只是为了验证方便,实际使用的时候不需要实现,项目启动后这些变量就会随机被赋值,这就是所谓的RandomValuePropertySource。
通过@ConfigurationProperties获取
@ConfigurationProperties(prefix=”my”)中的prefix=”my”表示获取以my为开头的变量。这种方法适合获取一组相关信息,即使不是random数据也是同样可以获取。
官网中给出的示例如下:
这里是配置文件中的信息,
代码:
这里是将配置文件中的信息映射为一个ArrayList,这里我没有具体操作,大家可以试下。
在配置文件中直接加入以下代码,我放到application.properties中的:
my.secret=${random.value} my.number=${random.int} my.bignumber=${random.long} my.uuid=${random.uuid} my.number.less.than.ten=${random.int(10)} my.number.in.range=${random.int[1024,65536]}
通过@Value注解在代码中获取:
@Component public class MyBean implements CommandLineRunner{ @Value("${random.value}") private String mySecret; @Value("${my.number}") private Integer myNumber; @Value("${my.bignumber}") private long myBignumber; @Value("${my.uuid}") private String myUuid; @Value("${my.number.less.than.ten}") private String myNumberLessThanTen; @Value("${my.number.in.range}") private String myNumberInRange; @Override public void run(String... args){ System.out.println("mySecret:"+mySecret); System.out.println("myNumber:"+myNumber); System.out.println("myBignumber:"+myBignumber); System.out.println("myUuid:"+myUuid); System.out.println("myNumberLessThanTen:"+myNumberLessThanTen); System.out.println("myNumberInRange:"+myNumberInRange); } }
CommandLineRunner接口只是为了验证方便,实际使用的时候不需要实现,项目启动后这些变量就会随机被赋值,这就是所谓的RandomValuePropertySource。
通过@ConfigurationProperties获取
package springboot.externalized.configuration; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; /** * Created by pangkunkun on 2017/9/5. */ @ConfigurationProperties(prefix="my") @Component public class Config { private String name; private Integer age; private Integer randomnumber; private String secret; private Integer number; private Long bignumber; private String uuid; /**省略getter和setter方法*/ } /** * Created by pangkunkun on 2017/9/5. */ @Component public class MyBean implements CommandLineRunner{ @Autowired private Config config; @Override public void run(String... args){ System.out.println("config.name:"+config.getName()); System.out.println("config.age:"+config.getAge()); System.out.println("config.secret:"+config.getSecret()); System.out.println("config.number:"+config.getNumber()); System.out.println("config.bignumber:"+config.getBignumber()); System.out.println("config.uuid:"+config.getUuid()); }
@ConfigurationProperties(prefix=”my”)中的prefix=”my”表示获取以my为开头的变量。这种方法适合获取一组相关信息,即使不是random数据也是同样可以获取。
官网中给出的示例如下:
my.servers[0]=dev.bar.com my.servers[1]=foo.bar.com
这里是配置文件中的信息,
代码:
@ConfigurationProperties(prefix="my") public class Config { private List<String> servers = new ArrayList<String>(); public List<String> getServers() { return this.servers; } }
这里是将配置文件中的信息映射为一个ArrayList,这里我没有具体操作,大家可以试下。
相关文章推荐
- SpringBoot学习:获取yml和properties配置文件的内容
- SpringBoot学习:获取yml和properties配置文件的内容(转)
- SpringBoot学习:获取yml和properties配置文件的内容
- SpringBoot学习:获取yml和properties配置文件的内容(转)
- 2、spring-boot 工程配置——配置文件详解:自定义属性、随机数、多环境配置等
- spring boot 入门学习(二)配置文件注解
- Spring Boot 01 加载配置文件和获取key/value值
- spring boot 学习--07---配置文件处理
- 02.Spring Cloud学习笔记之Spring Boot配置文件详解
- 从0开始学习SpringCould(8)--SpringBoot 分环境读取配置文件
- SpringBoot自定义配置文件fatjar获取不到解决办法
- spring boot 学习--06---常用配置文件
- SpringBoot学习<二>——SpringBoot的默认配置文件application和多环境配置
- spring-boot使用注解获取配置文件中的值
- Spring Boot学习笔记----读取配置文件
- Spring Boot学习--logback与properties配置文件
- spring boot学习2之properties配置文件读取
- Spring Boot 基础知识学习(二)——配置文件多环境配置
- SpringBoot 基础知识学习(二)——配置文件多环境配置
- springboot学习笔记2(拦截器,redis,授权登录,读取yml配置文件)