动力节点王鹤老师最新版的Springboot学习笔记整理


记录一下,来自B站动力节点王鹤老师讲的springboot学习笔记

视频地址:https://www.bilibili.com/video/BV1XQ4y1m7ex

004-JavaConfig配置容器 P4 

1. @Bean 
加在配置类中的方法上
作用相当于配置文件中的
方法的返回值对象注入到容器中
id 默认是方法名
@Bean的name属性相当于 id


2.@ImportRecource

加在配置类的上面

作用:导入其他的配置文件

格式:@ImportRecource(value={},{}...)


006-读取属性配置文件@PropertyResource P6

3.@PropertySource

作用:读取配置文件中properties属性

在resources目录下,创建properties文件,使用k=v的格式提供数据
在某个实体类的属性上使用@Value(“${配置文件中定义的属性名}”)。该实体类要使用@Componet
在配置类上方使用注解
@PropertySource(value = "classpath:config.properties")
@ComponentScan(basePackages = "com.rongrong.model")

010-了解pom.xml P10 

增强版的maven工具


    org.springframework.boot
    spring-boot-starter-parent
    2.1.12.RELEASE
    




    com.rongrong.springboot
    springboot-rr
    1.0-SNAPSHOT


015-SpringBootApplication注解 P15
 

由以下三个注解组成

  • @SpringBootConfiguration

可以将当前类当作配置文件使用,可以使用bean注解注入对象

  • @EnableAutoConfiguration

启动自动配置,把java对象配置好,注入到容器中

  • @ComponentScan

扫描器,找到注解,根据注解的功能创建对象,给属性赋值

默认扫描的包:@ComponentScan标注类所在包及子包下


017-properties配置文件 P17 

properties文件 (k=v)

    #设置访问应用上下文路径,contextpath

server.servlet.context-path=/myboot

yml文件(k:v)(推荐使用)


020-创建多环境配置文件 P20 

例如开发环境,测试环境,生产环境

为每个环境创建一个配置文件\

命名规则:application-环境标识.properties|yml

配置文件读取顺序(properties优先级高于yml)

   根目录config文件夹properties文件,yml文件

   项目根目录下的配置文件

   resource/config/properties

   resource/properties


在application.properties中激活开发环境

spring.profiles.acticve=dev


022-使用@Value读取数据 P22

@Value注解

获取配置文件中自定义的属性

格式:@Value("${}")


023-把配置文件的数据映射为java对象 P23 

@ConfigurationProperties注解:将配置文件中的数据映射成java对象

格式:@Component //创建子类的对象
@ConfigurationProperties(prefix = "school")


prefix为属性的前缀

注意:类中的属性名要与配置文件中定义的一致


027-手工获取容器中对象 P27 

场景:想通过代码,从容器中获取对象

场景:做测试时

通过run方法的返回值获取容器
SpringApplication.run(Application.class,args)


例子:

public static void main(String[] args) {
        //获取容器对象
        ConfigurableApplicationContext run = SpringApplication.run(Application.class, args);
        //从容器中获取对象
        UserService userService = (UserService) run.getBean("userService");
        userService.sayhello("rongrong");
    }
}


028-使用CommandLineRunner P28 

CommandLineRunner接口和ApplicationRunner接口

都有一个run方法

执行时间:在容器对象创建好后(启动类执行run方法之后),自动执行。

作用:可以完成自定义的在容器对象创建好的一些操作 

?