SpringBoot的自动配置

使用SpringBoot后最大的改变就是不用去配置传统SSM项目中相当多的xml配置文件,开发初期变得非常简单,省时省力。这一切的改变实际上都归功于@SpringBootApplicaiton注解以及 SpringApplication.run()方法·。

/**
 * @author KomeijiYUI
 */
@SpringBootApplication
public class RunApplication {
    public static void main(String[] args) {
        System.out.println("hello world");
        SpringApplication.run(RunApplication.class, args);
    }
}

@SpringBootApplication

    查看SpringBootApplicaiton内部的源码即可得知,内部拥有3个重要的注解需要了解

  • @EnableAutoConfiguration
  • @SpringBootConfiguration
  • @ComponentScan

@SpringBootConfiguration

    SpringBootConfiguration注解的作用就是讲当前类声明为一个配置类。然后Spring则会自动扫描@Configuration配置的类,读取其中的配置信息。而@SpringBootConfiguration是来声明当前类是Spring Boot应用的配置类,项目中只能有一个,所以一般无需自己来。

@EnableAutoConfiguration

    EnableAutoConfiguration注解的作用可以说就是告诉Spring Boot基于所添加的依赖去自动的"猜"开发者想要如何配置Spring,非常的智能。比如引入spring-boot-starter-web的依赖时,Spring Boot则会自动的帮开发者去配置tomcat和springMVC的依赖。因为Spring Boot"猜到"开发者想要开发一个web项目,就帮助开发者去配置了tomcat和springMVC的默认配置。因为Spring Boot对大量的第三方库以及Spring内部库进行了默认配置,这些配置的生效取决于是否引入相应的spring-boot依赖。若不想使用Spring Boot的默认配置,它也提供了自定义配置的

@ComponentScan

    ComponentScan注解可以说相当于提供了<context:component-scan/>标签的作用,是大家在传统SSM项目里的老朋友了。


注:@SpringBootApplication注解声明的类就是main函数所在的启动类,扫描的应是该类所在包及其子包。因此,一般启动类会放在一个比较前的包目录中。

比如package:com.springboot.controller 包下放了springMVC的Contoller类们。则main函数所在的Application类应该放在com.springboot包下。

    




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值