springBoot笔记(一) @SpringBootApplication的神奇魔力

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_41885819/article/details/101030198

通过IDEA快速创建一个Spring Boot项目后,Group根路径下会有一个带有@SpringBootApplication注解的启动类,同时这个类还拥有一个我们特别熟悉的main方法,执行该方法则可以直接启动我们的Spring Boot项目。

示例代码如下:

package com.wuwl;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//开启组件扫描和自动配置
@SpringBootApplication
public class SpringQuickStartApplication {

    public static void main(String[] args) {
    	//负责启动引导应用程序
        SpringApplication.run(SpringQuickStartApplication.class, args);
    }

}

SpringQuickStartApplication这个类再springBoot应用程序中有两个作用,配置和启动引导。

  • SpringQuickStartApplication是主要的Spring配置类,虽然Spring Boot的自动配置功能省去了大量的Spring配置,但还是需要进行少量配置,来启动自动配置。@SpringBootApplication开启了Spring的组件扫描和Spring Boot的自动配置功能。实际上,@SpringBootApplication将三个有用的注解组合在一起实现:

    • Spring的@Configuration 标明该类使用Spring基于Java的配置。虽然本书不会写太多配置,但我们会更倾向于使用基于Java而不是XML的配置。

    • Spring的@ComponentScan 启用组件扫描,这样你写的Web控制器类和其他组件才能被自动发现并注册为Spring应用程序上下文里的Bean。本章稍后会写一个简单的Spring MVC控制器,使用@Controller进行注解,这样组件扫描才能找到它。

    • Spring Boot的@EnableAutoConfiguration 这个不起眼的小注解也可以称为@Abracadabra,就是这一行配置开启了Spring Boot自动配置的魔力,让你不用再写成篇的配置了。

    • 在Spring Boot的早期版本中,你需要在ReadingListApplication类上同时标上这三个注解,但从Spring Boot 1.2.0开始,有@SpringBootApplication就行了。

  • SpringQuickStartApplication 还是一个启动引导类。要运行Spring Boot应用程序有几种方式,其中包含传统的WAR文件部署。但这里的main()方法让你可以在命令行里把该应用程序当作一个可执行JAR文件来运行。这里向SpringApplication.run()传递了一个SpringQuickStartApplication 类的引用,还有命令行参数,通过这些东西启动应用程序。

猜你喜欢

转载自blog.csdn.net/qq_41885819/article/details/101030198