热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:springboot实战05:SpringBoo多环境配置及配置属性注入到对象

篇首语:本文由编程笔记#小编为大家整理,主要介绍了spring-boot实战05:SpringBoo多环境配置及配置属性注入到对象相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了spring-boot实战05:Spring Boo多环境配置及配置属性注入到对象相关的知识,希望对你有一定的参考价值。



项目工程结构:

配置文件application.properties文件


com.yucong.blog.name=yucong
com.yucong.blog.title=Spring Boot Course
com.yucong.blog.desc=${com.yucong.blog.name} is learing ${com.yucong.blog.title}
# 随机字符串
com.yucong.blog.value=${random.value}
# 随机int
com.yucong.blog.number=${random.int}
# 随机long
com.yucong.blog.bignumber=${random.long}
# 10以内的随机数
com.yucong.blog.test1=${random.int(10)}
# 10-20的随机数
com.yucong.blog.test2=${random.int[10,20]}
# 多环境配置文件激活属性
spring.profiles.active=dev

applicaation-dev.properties


server.port=1111

application-test.properties


server.port=2222

application-prod.properties


server.port=3333

 

将application.properties文件中自定义的属性注入到类的属性中

BlogProperties.java


1 package com.yucong.demo.service;
2
3 import org.springframework.beans.factory.annotation.Value;
4 import org.springframework.stereotype.Component;
5
6 /**
7 * @author yucong
8 * @version 1.0.0
9 * @date 17/8/17 下午12:16.
10 */
11 @Component
12 public class BlogProperties {
13
14 @Value("${com.yucong.blog.name}")
15 private String name;
16 @Value("${com.didispace.blog.title}")
17 private String title;
18 @Value("${com.yucong.blog.desc}")
19 private String desc;
20
21 @Value("${com.yucong.blog.value}")
22 private String value;
23 @Value("${com.yucong.blog.number}")
24 private Integer number;
25 @Value("${com.yucong.blog.bignumber}")
26 private Long bignumber;
27 @Value("${com.yucong.blog.test1}")
28 private Integer test1;
29 @Value("${com.yucong.blog.test2}")
30 private Integer test2;
31
32 public String getName() {
33 return name;
34 }
35
36 public void setName(String name) {
37 this.name = name;
38 }
39
40 public String getTitle() {
41 return title;
42 }
43
44 public void setTitle(String title) {
45 this.title = title;
46 }
47
48 public String getDesc() {
49 return desc;
50 }
51
52 public void setDesc(String desc) {
53 this.desc = desc;
54 }
55
56 public String getValue() {
57 return value;
58 }
59
60 public void setValue(String value) {
61 this.value = value;
62 }
63
64 public Integer getNumber() {
65 return number;
66 }
67
68 public void setNumber(Integer number) {
69 this.number = number;
70 }
71
72 public Long getBignumber() {
73 return bignumber;
74 }
75
76 public void setBignumber(Long bignumber) {
77 this.bignumber = bignumber;
78 }
79
80 public Integer getTest1() {
81 return test1;
82 }
83
84 public void setTest1(Integer test1) {
85 this.test1 = test1;
86 }
87
88 public Integer getTest2() {
89 return test2;
90 }
91
92 public void setTest2(Integer test2) {
93 this.test2 = test2;
94 }
95 }

 单元测试YucongDemo02ApplicationTests.java:


1 package com.yucong.demo;
2
3 import org.apache.commons.logging.Log;
4 import org.apache.commons.logging.LogFactory;
5 import org.junit.Assert;
6 import org.junit.Test;
7 import org.junit.runner.RunWith;
8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.boot.test.context.SpringBootTest;
10 import org.springframework.test.context.junit4.SpringRunner;
11
12 import com.yucong.demo.service.BlogProperties;
13
14 @RunWith(SpringRunner.class)
15 @SpringBootTest(classes=YucongDemo02Application.class)
16 public class YucongDemo02ApplicationTests {
17
18 private static final Log log = LogFactory.getLog(YucongDemo02ApplicationTests.class);
19
20 @Autowired
21 private BlogProperties blogProperties;
22
23
24 @Test
25 public void test1() throws Exception {
26 Assert.assertEquals("yucong", blogProperties.getName());
27 Assert.assertEquals("Spring Boot Course", blogProperties.getTitle());
28 Assert.assertEquals("yucong is learing Spring Boot Course", blogProperties.getDesc());
29
30 log.info("随机数测试输出:");
31 log.info("随机字符串 : " + blogProperties.getValue());
32 log.info("随机int : " + blogProperties.getNumber());
33 log.info("随机long : " + blogProperties.getBignumber());
34 log.info("随机10以下 : " + blogProperties.getTest1());
35 log.info("随机10-20 : " + blogProperties.getTest2());
36
37 }
38
39 }

 



推荐阅读
author-avatar
于英豪H
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有