springboot学习笔记(四)
springboot配置文件及yml的使用
1.配置文件
作用:springboot自动配置是基于约定的,可以使用配置文件对默认的配置或约定进行修改
默认的全局配置文件:
①application.properties :
写法:k=v
示例:
server.port = 8880
②application.yml :yml不是一个标记文档
写法:k:空格v
示例:
server:
port: 8880
path: a\b\c
yml里面默认可以不写引号,“”(双引号)会将其中的转义符转义,其他不转义
xml是一个标记文档:
<server>
<port>8080</port>
<path>a\b\c</path>
</server>
2.yml的使用
①创建一个student类(Student.class)
package com.example.bean;import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component //将javabean放入spring容器内
@ConfigurationProperties(prefix = "student")//spring-boot 提供@ConfigurationProperties注解将配置文件的值映射到类上使用
public class Student {private String name;private int age;private boolean sex;private Date birthday;private Map<String,Object> location;private String[] habbies;private List<String> skills;private Pet pet;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 boolean isSex() {return sex;}public void setSex(boolean sex) {this.sex = sex;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}public Map<String, Object> getLocation() {return location;}public void setLocation(Map<String, Object> location) {this.location = location;}public String[] getHabbies() {return habbies;}public void setHabbies(String[] habbies) {this.habbies = habbies;}public List<String> getSkills() {return skills;}public void setSkills(List<String> skills) {this.skills = skills;}public Pet getPet() {return pet;}public void setPet(Pet pet) {this.pet = pet;}public Student(String name, int age, boolean sex, Date birthday, Map<String, Object> location, String[] habbies,List<String> skills, Pet pet) {super();this.name = name;this.age = age;this.sex = sex;this.birthday = birthday;this.location = location;this.habbies = habbies;this.skills = skills;this.pet = pet;}public Student() {super();}@Overridepublic String toString() {return "Student [name=" + name + ", age=" + age + ", sex=" + sex + ", birthday=" + birthday + ", habbies="+ Arrays.toString(habbies) + ", skills=" + skills + ", pet=" + pet + "]";}}
②创建Pet类(Pet.class)
package com.example.bean;public class Pet {private String nickname;private String strain;public String getNickname() {return nickname;}public void setNickname(String nickname) {this.nickname = nickname;}public String getStrain() {return strain;}public void setStrain(String strain) {this.strain = strain;}@Overridepublic String toString() {return "Pet [nickname=" + nickname + ", strain=" + strain + "]";}public Pet(String nickname, String strain) {super();this.nickname = nickname;this.strain = strain;}public Pet() {super();}}
③编写yml文件(application.yml)
student: #简单类型name: djkage: 20sex: truebirthday: 2000/07/15#map类型:location: #写法2:province: sdcity: wfzone: sg#写法1:{province: sd,city: wf,zone: sg} 行内写法#数组类型:habbies: [篮球,兵乓球,书法] #行内写法#- 篮球#- 兵乓球#- 书法#集合类型:skills: [计算机,编程,springboot] #行内写法#- 计算机#- 编程#- springboot#类 类型Pet:#写法2{nickname: xiaobai,strain: jiwawa} #写法1#nickname: xiaobai#strain: jiwawa
④测试
package com.example.SpringbootDemo;import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;import com.example.bean.Student;@RunWith(SpringRunner.class)
@SpringBootTest
@EnableConfigurationProperties(Student.class)//3.通过@Autowired标签即可访问到该对象,不过在使用之前必须在使用类上面增加注解@EnableConfigurationProperties
public class SpringbootDemoApplicationTests {@AutowiredStudent student;@Testpublic void contextLoads() {System.out.println(student);}}
注解
1. @EnableConfigurationProperties(Student.class)
通过@Autowired标签即可访问到该对象,不过在使用之前必须在使用类上面增加注解@EnableConfigurationProperties
2. @ConfigurationProperties(prefix = "student")
spring-boot 提供@ConfigurationProperties注解将配置文件的值映射到类上使用
springboot学习笔记(四)相关推荐
- Springboot学习笔记(四)SpringSecurity.Shiro
前言: 学习B站UP主狂神说视频笔记整理视频链接 SpringSecurity 安全简介 Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架.它实际上是保护基于sprin ...
- springboot学习笔记(五)
一丶注值方式 1.在application.properties文件中注值 首先我们将application.yml中的学生名字和年龄给注释掉,来验证在applic.properties的注值方式. ...
- SpringBoot学习笔记(9)----SpringBoot中使用关系型数据库以及事务处理
在实际的运用开发中,跟数据库之间的交互是必不可少的,SpringBoot也提供了两种跟数据库交互的方式. 1. 使用JdbcTemplate 在SpringBoot中提供了JdbcTemplate模板 ...
- SpringBoot(学习笔记)
SpringBoot学习笔记 从今天开始就进入微服务阶段 一些小问题 1.HelloWorld 1.1回顾什么是Spring 1.2什么是SpringBoot 1.3微服务架构 2.第一个Spring ...
- 【Springboot学习笔记】SpringBoot+Mybatis+Thymeleaf+Layui数据表单从零开始实现按条件模糊分页查询的方法
[Springboot学习笔记]SpringBoot+Mybatis+Thymeleaf+Layui数据表单从零开始实现按条件模糊分页查询的方法 目录 1.搭建环境 1.1直接从网上下载SpringB ...
- SpringBoot 学习笔记
SpringBoot 学习笔记 文章目录 SpringBoot 学习笔记 1. SpringBoot简介 1.1 什么是Spring 1.2 Spring 是如何简化Java开发的 1.3 什么是 S ...
- C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决)
RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决) 参考文章: (1)RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决) (2)https://www.cnblogs. ...
- springboot学习笔记:12.解决springboot打成可执行jar在linux上启动慢的问题
springboot学习笔记:12.解决springboot打成可执行jar在linux上启动慢的问题 参考文章: (1)springboot学习笔记:12.解决springboot打成可执行jar在 ...
最新文章
- MVVM框架下,WPF实现Datagrid里的全选和选择
- 【跃迁之路】【597天】程序员高效学习方法论探索系列(实验阶段354-2018.09.25)...
- php中pre标签,html中pre标签与code标签的作用与用法
- FileInputStream与FileOutputStream 复制文件例子代码
- 浏览器缓存原理以及本地存储
- 安卓手机刷软路由_华为路由AX3 Pro上手测评:用过最方便的路由器,没有之一...
- 高质量linux c编程指南,《linux c编程指南》学习手记5
- Lady Gaga Feat. Colby O'Donis - Just Dance
- 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 8000401a 因为配置标识不正确,系统无法开
- PDF解密工具—Cisdem PDF Password Remover
- cpu排行计算机专业,2020最新电脑cpu性能天梯图 i5i7i9处理器性能排行榜介绍
- 【Lesson 1】 和弦 Chord
- 打开excel 自动启动宏_Excel启动时自动打开不需要的文件
- Wilson定理推论
- Mybatis 查询总数
- C语言: 字符串 -2
- 【测绘专用】中海达全站仪数据导入南方CASS
- DC-DC非隔离电源PCB布局
- 2021-06-19, OV9281规格书和初始代码
- 浙江大数据交易中心启航,首日成交4笔