springboot的配置
首先是面试题
Spring底层的AOP实现原理
JDK动态代理: 只能对实现了接口的类产生代理
Cglib动态代理 对没有实现接口的类产生代理对象,生成子类对象
XML和注解的比较
使用场景:
XML:可以使用任何场景
结构清晰,后期维护方便
注解:有些地方用不了,这个类并不是自己的(源代码)
开发速度快
springboot继续入门
SpringBoot使用一个全局的配置文件,配置文件名是固定的;
•application.properties
•application.yml
YAML的基本语法
k:(空格)v:表示一对键值对(空格必须有);
以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的
属性和值也是大小写敏感;
此时port和path就是在同一个层级
值的写法
- 字面量:普通的值(字符串,数字,布尔值) k: v:字面直接来写; 字符串默认不用加上单引号或者双引号;
“”:双引号;会转义字符串里面的特殊字符;特殊字符会作为本身想表示的意思 name: “zhangsan \n
lisi”:输出;zhangsan 换行 lisi ‘’:单引号;不会转义特殊字符,特殊字符终只是一个普通的字符串数据 name:
‘zhangsan \n lisi’:输出;zhangsan \n lisi - 对象 k: v:在下一行来写对象的属性和值的关系;注意缩进 对象还是k: v的方式
- 数组(List Set) 用- 值表示数组中的一个元素
如下图
实例:将JavaBean注入到配置文件中
分别提供实体类 Person Dog
在注入的Person的类上面添加注解
如下图
@Value获取值和@ConfigurationProperties获取值比校
@Value注解支持字面量的注解方式
使用SPEL表达式获取
如下图
在resources添加配置文件
运行App文件,在浏览器打开http://localhost:端口号/hello/person