springboot自动配置

springboot在spring的基础上做了优化,简化了程序员的开发,而最重要的几个就是自动配置,起步依赖和打jar包运行了,这里我们先看到自动配置:

自动配置:

    是否记得springboot之前连接数据库,需要在xml中显示配置DataSource,还要注入classname之类的东西,不觉得这都是很麻烦的东西么,username,password这些配置能变,但是配置的那些xml标签是不会变的,最后也需要通过resourceLoader加载成类,那么何必这么麻烦呢。

    所以springboot在之上做了优化,这些固定的操作都省略了,大大减轻了我们的负担,加快了我们的开发效率,那么他是怎么实现的呢,说起来这也跟起步依赖分不开,也就是你需要加的依赖。

    在这个依赖里面有两个类,就拿mq来说


springboot自动配置_第1张图片

这是自动配置类,用过springboot的都知道,显示配置的时候大多使用这种配置类的形式,而少用xml了。那么有个问题,显示配置是怎么覆盖自动配置的呢,看到注解conditional了么,这个是根据条件使用该配置,像ConditionalOnMissingBean就是当bean不存在时使用该配置了。

那么是不是还有一个神奇的地方,springboot是怎么做到其他框架可以直接配置在spring的配置文件中呢,因为在依赖里有个properties的类,就拿mybatis来说吧


springboot自动配置_第2张图片

看到ConfigurationProperties注解了么,这个是使用配置自动映射,前缀是mybatis,这是spring的注解,默认查找的是spring的配置文件,那么下次使用spring配置的时候是不是不用去google怎么配置了,可以自己看properties类呢,bingo!!!

你可能感兴趣的:(springboot自动配置)