SpringBoot学习历程

1.怎么开?

运行@SpringBootApplication注解的主类

2.注解含义

@SpringBootApplication:主要做了@SpringBootConfiguration、@EnableAutoConfiguration两个注解。@SpringBootConfiguration:负责扫描主类以及主类的子包的一些注解
@EnableAutoConfiguration:负责加载SpringBoot默认配置好的设置
@RestController:等于@Controller与@Responsebody加起来。注解的控制器返回不解析为页面
@RequestMapping:访问链接
@Configuration:定义为配置类
@Bean:获取Bean的方法
@Import:加载其他配置类的注解
@Component:加载标注的类进入容器
@ConfigurationProperties用于映射配置文件的属性,person是映射前缀
@SpringBootTest:跟ssm测试的ContextConfiguration一样,注入容器(因为SpringBoot自动扫)
@Autowired:与SSM相同,注入。
@ConfigurationProperties(prefix=“person”)映射对应类别到实体中
@Value:利用(${“person.lastName”})赋值,不适合做复杂结构读取,复杂结构请使用@ConfigurationProperties
@ImportResource:可以用来导入xml文件,虽然SpringBoot推荐使用注解开发,但还是保留了xml接口,必须用在启动类上边。
@PropertySource注解用于读取其他文件,注入内容可以使用@Value或者@ConfigurationProperties
@Bean:等同于标注一个Bean,标注的方法必须返回一个对象

3.SpringBoot配置文件

可以是properties,可以是yaml,官方推荐ymal,因为复杂对象比较简洁…那就看这个吧
默认连接resource下的application.properties和application.yaml配置文件,可以在里面添加内容用于映射,配置属性等。
可以引用其他属性的值来赋值,例如age: p e r s o n . a g e 也 有 一 些 内 置 函 数 给 予 使 用 , 例 如 {person.age} 也有一些内置函数给予使用,例如 person.age使{random.int}等,安装了提示之后,跟java差不多。。
注意:例如person.age: r a n d o m . i n t 之 后 d o g . a g e : {random.int} 之后dog.age: random.intdog.age:{person.age},两个值不相同
dog.age会多调用一次random函数进行赋值。
使用properties有时候会出现乱码问题
IDEA的解决方案是:Setting 搜索file enc 编码都改成UTF-8 并勾上 Transparent
ymal与properties选其一进行使用即可。两个都使用的话另一作为补充使用。
properties不支持驼峰命名法,lastName会被改成last-name,使用lastName会报错(不支持松散绑定)
@Value支持计算,例如#{12*3},而@ConfigurationProperties不支持。
@ConfigurationProperties支持数据校验,配合@Validated以及@Email等注解可以校验数据,@Valid不可以 校验不通过会报错。
@PropertySource注解注意前缀命名,如果前缀与application冲突,会读不到,转而读到application的内容。
application文件拥有读取最高优先级
接下来给出一个配置文件提示插件

<!-- yaml文件提示 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

导入pom.xml,起飞吧!

4.热部署

<!-- 热部署 记得debug启动 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

5.遇到的坑

1、IDEA的文件夹,没有内容不部署。。。坑…
2、IDEA的热部署貌似只有debug有效。。手动Ctrl+F9。。。
3、pom.xml project报错,可能是有的包没下载好…删了重新下就好了
4、一定要注意ymal的格式,错一个地方都会报错!

6.视频地址

腾讯课堂:https://ke.qq.com/webcourse/index.html#cid=179440&term_id=100211540&taid=2691067594063088&vid=d1428b37nat

7.实践的代码

GitHub:https://github.com/Gruuy/demo1

小弟不才,本文章作为本人的学习记录…方便日后回头查阅。。大佬们勿喷。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值