来自于java尚硅谷教程

简单的说这两个配置文件更改配置都可以更改默认设置的值比如服务器端口号之类的,只需再文件中设置即可, properties可能是出现的比较早了,如果你不调你的默认编码,中文可能乱码,yml则不会,至于在两个文件中写不同配置最终执行那个?我没试不得而知!总之都很好用!

说白了为了提高代码复用性是这样吧意思这个就是为了方便从配置文件中读值

例如你建立了一个bean类 别指望运行

Person.java

package com.automavn.bean;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component; import java.util.List;
import java.util.Map;
/*
* 把配置文件映射到组件中
* prefix对配置文件哪一个属性下的文件进行映射@Component必须要加
* */
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String name;
private int age;
private List<Object> list;
private Map<Object,Object> map; @Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
", list=" + list +
", map=" + map +
'}';
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public List<Object> getList() {
return list;
} public void setList(List<Object> list) {
this.list = list;
} public Map<Object, Object> getMap() {
return map;
} public void setMap(Map<Object, Object> map) {
this.map = map;
}
}

  

@Component
@ConfigurationProperties(prefix = "person")这两个配置是要加的同时要在maven配置(pom.xml)你的yml将会提示你拥有的类的信息
    <!-- 有了这个bean 下yml的配置将会提示 而且dependency 在dependencies标签下-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>

  application.properties的值的大致写法

# 要设置你的编码否则这个会乱码 设置为UTF-8 在设置里面设置
person.age=20
person.name=爸爸
#list用逗号隔开
person.list=a,b,c,d
person.map.key=第一个key值
person.map.key1=第二个key值

  application.yml的值的大致写法你写的对不对点击文字底部状态栏会有提示的(IDEA)

person:
name: 爸爸
age:
list:
- 第一个list
- 第二个list
map: {k1: v1 , k2: v2 }

@Component

@ConfigurationProperties(prefix = "person")
@Validated 可以添加对格式的判断例如@Email 但是@Value不行 ---------------------------------------------------
@Value("${person.name}") 利用@Value获取特定的值
以前没学过Spring建议....语法不大懂走一步说一步吧

----------------------------------------------------------------------------------------------------------第二天------------------------------------------------------  

@PropertySource(value={classpath:resources下的自定义的properties文件})有了这个文件就可以读你自定义的配置了,原来是全局的

SpringBoot推荐使用给容器添加组件方式为 @Bean给容器添加组件

例如:

@Configuration
public class MyConfig
{
@Bean//组件ID默认为方法名称
public HelloService hello()
{
} }

  

Spring boot application.properties和 application.yml 初学者的学习的更多相关文章

  1. Spring Boot中application.properties和application.yml文件

    application.properties和application.yml文件可以放在一下四个位置: 外置,在相对于应用程序运行目录的/congfig子目录里. 外置,在应用程序运行的目录里 内置, ...

  2. 构建第一个Spring Boot2.0应用之application.properties和application.yml(八)

    本节学习在项目中配置文件配置的方式,一种是通过applicaiton.properties,一种是通过application.yml方式. 一.环境: IDE:IntelliJ IDEA 2017.1 ...

  3. Spring Boot 核心配置文件 bootstrap & application

    Spring Boot 核心配置文件 bootstrap & application 1.SpringBoot bootstrap配置文件不生效问题 2.bootstrap/ applicat ...

  4. SpringBoot application.properties (application.yml)优先级从高到低

    SpringBoot application.properties(application.yml) 优先级从高到低 SpringBoot配置文件优先级从高到低 =================== ...

  5. 简述application.properties和application.yml 以及 @ConfigurationProperties 和@PropertySource @Value 和@ImportResource的用法,区别

    问题: 如何在application.properties和application.yml中配置String,Date,Object,Map,List类型的属性,并且idea能提示 先写一个Perso ...

  6. idea社区版+第一个spring boot项目+增删改查+yml修改端口号

    参考:https://www.cnblogs.com/tanlei-sxs/p/9855071.html 中途出现问题时参考了太多 1.下载idea社区版 2.在settings -> Plug ...

  7. spring boot 配置文件properties和YAML详解

    spring boot 配置文件properties和YAML详解 properties中配置信息并获取值. 1:在application.properties配置文件中添加: 根据提示创建直接创建. ...

  8. Spring boot 梳理 - 全局配置文件application.properties或者是application.yml,在resources目录下或者类路径下的/config下,一般我们放到resources下。

    全局配置文件application.properties或者是application.yml,在resources目录下或者类路径下的/config下,一般我们放到resources下.

  9. Spring boot 的 properties 属性值配置 application.properties 与 自定义properties

    配置属性值application.properties 文件直接配置: com.ieen.super.name="MDD" 自定义properties文件配置:src/main/r ...

随机推荐

  1. Windows远程“要求的函数不受支持”解决办法

    解决方法: 开启组策略中远程桌面链接安全层.1.开始-运行-gpedit.msc,进入组策略编辑器:2.找到左侧边栏计算机配置-管理模板-Windows组件-远程桌面服务-远程桌面会话主机-安全项:3 ...

  2. Python组合类型笔记

    Python中常用的三种组合数据类型,分别是: - 集合类型 - 序列类型 - 字典类型 1. 集合类型: -集合用大括号{}表示,元素间用逗号分隔 -建立集合类型用{}或set() -建立空集合类型 ...

  3. 02-04Android学习进度报告四

    今天主要学习Android界面的构建,包括Textview.EdixtText.Button等元素的应用. 关于Textview,主要是以下属性: id:为TextView设置一个组件id,根据id, ...

  4. Lamda表达式学习笔记一

    Lamda表达式学习笔记一 一.Lamda语法诠释 三傻大闹宝莱坞的主人公兰彻说的一句话让我映像深刻:用简单的语言来表达同样的意 我并不是说书上的定义怎么怎么不对,而是应该理解书本上的定义,并用简单的 ...

  5. spark aggregateByKey 时 java.lang.OutOfMemoryError: GC overhead limit exceeded

    最后发现有一个用户单日访问我们网站次数为 4千万,直接导致 aggregate 时内存不够.过滤掉该用户即可.

  6. JVM 学习笔记 - 带你掌握JVM类加载机制

    前言 往期JVM系列: 精美图文带你掌握 JVM 内存布局 本节主要内容: 类的生命周期 类加载阶段描述 数组类和非数组类在加载阶段的差别 父子类初始化顺序 接口的初始化 JVM如何处理 多线程同时初 ...

  7. sqlplus导入sql,dmp导入导出

    1.创建表空间及用户名 1).用Oracle的EM做数据库的管理(表空间.用户及授权为例子) https://blog.csdn.net/anderslu/article/details/566701 ...

  8. 多年珍藏的55w御剑字典

    御剑珍藏55w目录字典,很给力,放在以前直接数据库都能给跑出来. 用法:直接把放入配置文件的目录 链接:https://pan.baidu.com/s/1MGxdd9hH006Y7AO7CpkO8g ...

  9. 【转】iPhone/IOS使用Fiddler抓包配置

    原文链接:https://blog.csdn.net/weixin_39198406/article/details/81123716 1. 安装 安装Fiddler软件2. 配置2.1 端口 点击 ...

  10. POJ 1166:The Clocks

    The Clocks Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 15357   Accepted: 6230 Descr ...