java springboot工程引导类,简单认识程序入口

我们在创建springboot项目时 总会看到这么一个启动类
java springboot工程引导类,简单认识程序入口_第1张图片

首先 我们要知道 我们的程序最后就成立一个spring容器 而你所有的类都是交给这个spring容器去管理的

做 springboot 程序 也会有这个spring容器

为了方便大家看 我们将启动类的代码改成这样

package com.example.threshold;

import com.example.threshold.controller.BookController;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;

@SpringBootApplication
public class ThresholdApplication {

    public static void main(String[] args) {
        ConfigurableApplicationContext ctx = SpringApplication.run(ThresholdApplication.class, args);
        BookController bean = ctx.getBean(BookController.class);
        System.out.println("beanmmmmmm>"+bean);
    }

}

这里 我们通过ConfigurableApplicationContext接口作为类型 取值了燕来启动类的方法 学过spring的都知道 这个接口就是接收一个容器的
然后 我们用赋值的容器 获取了bean对象
java springboot工程引导类,简单认识程序入口_第2张图片
我这里这个类就声明了一个对象在我们系统的bean管理中 然后 我们这里 就通过启动类获取到的spring来在bean对象中 取到BookController对象并输出
运行结果如下
java springboot工程引导类,简单认识程序入口_第3张图片
这里 就可以看到 类对象 被输出了

说明 他这里是一个spring容器 里面是我们声明的所有bean对象

第二个值得注意的地方是他的注解
java springboot工程引导类,简单认识程序入口_第4张图片
我们点进去看一下
java springboot工程引导类,简单认识程序入口_第5张图片
可以卡看到 这下面又是别有洞天 我们相信比较有见解的伙伴第一眼就会看上这个 SpringBootConfiguration 那么 我们点进去
java springboot工程引导类,简单认识程序入口_第6张图片
当我们看到这个注解时 就已经看好了 哦 这就是个配置类
ComponentScan则会扫描 bean
java springboot工程引导类,简单认识程序入口_第7张图片
但这里要科普一下 他的扫描仅与当前目录 和当前目录下的目录
如果你把bean类放在了他的包外面
java springboot工程引导类,简单认识程序入口_第8张图片
那启动类就找不到了
java springboot工程引导类,简单认识程序入口_第9张图片

简单说 启动类又叫引导类 他是程序的入口 他会扫描所有的bean

你可能感兴趣的:(java,spring,boot,spring)