你可能不知道的Spring Boot那点事
当前微服务的概念被炒的非常的火热,而Spring Boot则被赋予了”为微服务而生“的称号,相信看这篇文章的你,对微服务或者Spring Boot都有所了解了,我在该篇中也不再赘述,如果大家对Spring Boot有所兴趣,可以在公众号中留言,我会视情况而定。本文主要想讲讲配置文件相关的内容,你可能会比较疑惑,入门时期,最费时间的可能就是环境的配置
使用IDE创建工程正常情况都会生成一个application.properties
文件,但我推荐使用YAML格式的application.yml
,好处,谁用谁知道
例
girl:height: 173age: 20
cup: 64
注意:冒号后面一定要有一个空格
数组
languages:- Ruby- Perl- Python
languages就是一个数组
变量引用
height: 178
decription: "my height is ${height}"
在decription中引用了height值
随机数
my:random: - "${random.value}"- "${random.int}"- "${random.long}"- "${random.int(10)}"- "${random.int[10-30]}"
使用random就可以产生随机数,可以有int、string、long等类型值
多环境配置
在实际开发中,肯定是存在开发、测试、线上多个环境的配置,如何解决这个问题
新建多个环境的配置文件,如:application-dev.yml、application-test.yml
等
在application.yml
中加上
spring:profiles:active: dev
如上配置则会选用dev环境的配置文件
注意:在
application.yml
中的配置是适用所有的环境的
Java环境读取配置变量
使用@Value()
注解
@Value("${shareId}")
private String shareId;
如上,就获取了shareId的值
使用@ConfigurationProperties
注解
若存在多个相同的起点的配置变量
如
girl:height: 173age: 20
新建一个properties的java文件,用于注入
@Component
@ConfigurationProperties(prefix = "girl")
public class GirlProperties {private Integer age;private String height;public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getHeight() {return height;}public void setHeight(String height) {this.height = height;}
}
在实际业务中,只要引用一下相应properties的java文件即可
@Autowired
private GirlProperties girlProperties;
松绑定
Spring Boot支持绑定的属性不需要很严格的匹配约束
例
first-peron: Smith
在java文件中注入属性可以是这样子滴
@Component
public class Properties {private String firstPerson;public String getFirstPerson() {return firstPerson;}public void setFirstPerson(String firstPerson) {this.firstPerson = firstPerson;}}
更多技术相关的和话题请关注公众微信号【APPZone】
私下交流请关注的新浪微博@迹_Jason
你可能不知道的Spring Boot那点事相关推荐
- 【深入浅出Spring原理及实战】「开发实战系列」带你看看那些可能你还不知道的Spring特殊技巧和想不到的招数
前提介绍 本文主要介绍相关Spring框架的一些新特性问题机制,包含了一些特定注解方面的认识. @Lazy可以延迟依赖注入 @Lazy注解修饰在类层面! @Lazy @Service public c ...
- 你所不知道的Spring的@Autowired实现细节
相信很多Java开发都遇到过一个面试题:Resource和Autowired的区别是什么?这个问题的答案相信基本都清楚,但是这两者在Spring中是如何实现的呢?这就要分析Spring源码才能知道了. ...
- install npm 到某个文件下执行_你可能不知道的 npm 依赖管理那些事
点击上方蓝字关注我们 npm 是 Node.js 默认的.以 JavaScript 编写的包管理工具,如今,它已经成为世界上最大的包管理工具,是每个前端开发者必备的工具.不知你是否遇到过下面问题: 哎 ...
- spring boot 事务_Redis 事务在 SpringBoot 中的应用
环境信息 JDK 版本信息 <properties><java.version>1.8</java.version> </properties> Spr ...
- 你可能不知道的关于Oracle Rac的事...
Oracle 11g Rac进程启动梳理 RAC集群软件组件 CRS CSS RAC集群启动原理 启动过程 进程展示 顺序分析 RAC故障快速定位 写给读者 RAC集群软件组件 Oracle Rac集 ...
- Java开发人员应该知道的5大Spring Boot功能
您可能已经听说过Spring Boot,这是用不到140个字符创建一个Spring Web应用程序的神奇力量,可以在一条推文中编写这些字符,但这到底意味着什么? 哪些功能可以使Spring Boot具 ...
- 你不得不知道的xxx系列汇总(10.29更新)
文章目录 1. 你不得不知道的jQuery基础 2. 你不得不知道的Bootstrap基础 3. 你不得不知道的Maven基础 4. 你不得不知道的webapp项目(skshop) 5. 你不得不知道 ...
- 我的世界java版移除猪灵了吗_我的世界:猪灵拥有三种类型?关于猪灵,你可能不知道的7件事...
猪灵是1.16下界更新第二个快照版本20w07a加入的下界新生物,虽然上线时间已经有两个月之久,但对于大部分国内玩家来说却还是一个陌生的存在.为了让玩家更加的了解猪灵,迷恋整理了7件,你可能不知道的关 ...
- 关于Spring Boot你不得不知道的事
1 Spring Boot官网[2.1.5 CURRENT GA] 1.1 Pivotal Wiki Pivotal Software, Inc. is a software and services ...
最新文章
- 前端基础之JQuery
- Python pip安装第三方库的国内镜像
- isMobile 一个简单的JS库,用来检测移动设备
- [HAOI2012]音量调节 入门dp
- Prism for WPF初探(构建简单的模块化开发框架)
- 腾讯优图13篇论文入选ICCV2019,涉及2D图像多视图生成等研究
- 与动态执行的C# 代码进行通讯
- CodeForces - 831D Office Keys
- 【前端就业课 第一阶段】HTML5 零基础到实战(四)伪类与伪元素
- ssm框架逻辑删除mysql_MybatisPlus--CRUD接口及主键增长策略、自动填充、乐观锁更新数据...
- 模拟导入系统通讯录5000+手机号 校验大量数据处理
- 上海大学计算机网络实验报告3,上海大学计算机组成原理实验报告(全)
- jQuery stop()浅析
- MFC 中 Radio Button 使用方法
- 「leetcode」15. 三数之和:双指针法
- 2020年副业推荐,介绍网络兼职的文章
- 【微信开发】定制消息推送
- 计算机老出现无法响应,电脑经常出现假死或未响应怎么处理
- 空间两条直线段的最短距离及最近点计算
- vue3.0初体验(例子解读reactive响应式)
热门文章
- Linux 查看 占用内存最多 占用cpu最多 程序(类似top,监视)
- CEF3:拦截http request请求和response响应(包括ajax请求和响应也能拦截到)
- Wannafly挑战赛23 A	字符串
- 【刷题】HDU 4966 GGS-DDU
- Azure系列1.1.2 —— 用于 IntelliJ 的 Azure 工具包的登录说明
- 开始使用Python编程
- Simulink之理想开关
- 面试官问我:解释一下Dubbo服务暴露
- “要源码上门自取”,结果人真上门了!国内企业再惹争议
- Hollis原创|深入分析Java的编译原理