如何快速创建一个springboot项目:
编写一个controller:
默认生成的springboot项目特点:
- 主程序已经写好了,我们只需要写我们自己的逻辑
- resources文件夹中目录结构
static:保存静态资源,如js,css, images
templates:保存所有的模板页面
application.properties:springboot应用的配置文件,可以修改一些默认设置
1、配置文件
配置文件的作用:修改springboot自动配置的默认值;springboot在底层都给我们自动配置好;
YAML(YAML Ain’t Markup Language)
YAML A Markup Language: 是一个标注语言
YAML isn’t Markup Language :不是一个标记语言
标记语言:
以前的配置文件;大多是使用xxx .xml文件
YAML:以数据为中心,比json、xml更适合做配置文件
YAML: 配置例子,非常简洁,以数据为中心
XML:的配置大多浪费在了标签的开闭上
<server>
<port>8081</port>
</server>
2、YAML语法
1、基本语法
k:(空格)v: 表示一对键值对(空格必须有)
以空格的缩进来控制层级关系,只要是左对齐的一列数据,都是一个层级
server:
port: 8081
path: /hello
属性和值也是大小写敏感的
2、值的写法
字面量:普通的值(数字,字符串,布尔)
k: v 字面直接来写;
"":双引号:不会转义字符里面的特殊字符;特殊字符会作为本身想表达的意思
name:“zhangsan \n lisi”:输出 张三 换行 lisi
‘’:单引号;会转义字符,特殊字符最终只是一个普通的字符串数据
name:‘zahngsan \n lisi’: 输出: zahngsan \n lisi
对象:(属性和值)------> (键值对):
k: v : 在下一行写对象的属性和值的关系;注意缩进
对象还是k : v 的方式
friends:
lastname: zhangsan
age: 20
行内写法:使用 {}
friends: {lastname: zhangsan,age: 18}
数组(List、Set)
用 - 值表示数组中一个元素
pets:
- cat
- dog
- pig
行内写法
pets: [cat,dog,pig]
3、配置文件值注入
配置文件
person:
lastName: zhangsan
age: 18
boss: false
birth: 2017/12/15
maps: {k1: v1,k2: 12}
lists:
- lisi
- zhaoliu
- xiaozhang
dog:
name: 小狗
age: 2
javabean:
/**
* 将配置文件中配置的每一个属性的值, 映射到这个组件中
*@ConfigurationProperties:告诉springboot将本类中的所有属性和配置文件中相关的配置进行绑定
* prefix = "person":配置文件中哪个下面的所有属性 进行一一映射
*
* 只有这个组件是容器中的组件,才能使用容器提供的功能
*/
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String lastName;
private Integer age;
private Boolean boss;
private Date birth;
private Map<String,Object> maps;
private List<Object> lists;
private Dog dog;
我们可以导入配置文件处理器,以后编写配置就有提示了:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>