springboot-起步依赖


参考:spring boot启动机制核心原理详解

1.spring-boot-starter-web web启动器

  web启动器?动帮我们引?了web模块开发需要的相关jar包。

   spring-boot-starter-web 默认替我们引入了核心启动器 spring-boot-starter  

2.spring-boot-starter-xxx是官?提供的starter。

        
        
            org.springframework.boot
            spring-boot-starter-amqp
        

3.xxx-spring-boot-starter是第三?提供的starter。

        
            com.alibaba
            druid-spring-boot-starter
            1.1.2
        

4.maven的spring-boot-starter-parent的作用

  spring-boot-starter-parent是一个特殊的starter,它用来提供相关的Maven默认依赖。使用它之后,常用的包依赖可以省去version标签。

5.stater机制帮我们完成了项?起步所需要的的相关jar包。那问题?来了,传统的spring应?中不是要在application.xml中配置很多bean的吗,?如dataSource的配置,transactionManager的配置 springboot是如何帮我们完成这些bean的配置的、

  5.1 自动配置

    5.1.1 mybatis 自动配置类  MybatisAutoConfiguration

    @Configuration注解的配置类可以看作是能?产让Spring IoC容器管理的Bean实例的??。@Bean注解告诉Spring,?个带有@Bean的注解?法将返回?个对象,该对象应该被注册到spring容器中(生成bean对象并纳入到spring容器中)。

    所以上?的MybatisAutoConfiguration这个类,?动帮我们?成了SqlSessionFactory这些Mybatis的重要实例并交给spring容器管理,从?完成bean的?动注册。

  5.2 @PostConstruct 注解的作用

    影响servlet声明周期。被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。

    5.2.1 

      servlet是一个Java编写的程序,此程序是基于http协议的,在服务器端(如Tomcat)运行的,是按照servlet规范编写的一个Java类。
      客户端发送请求至服务器端,服务器端将请求发送至servlet,servlet生成响应内容并将其传给服务器

        Java深入 - servlet和Spring的DispatcherServlet详解

        Tomcat是如何加载Spring和SpringMVC及Servlet相关知识

6. 到此我们已经知道了bean的配置过程,但是还没有看到springboot是如何读取yml或者properites配置?件的的属性来创建数据源的

  6.1 MybatisAutoConfiguration 类中

在DataSourceAutoConfiguration类??,我们注意到使?了EnableConfigurationProperties这个注解。

 DataSourceProperties中封装了数据源的各个属性,且使?了注解ConfigurationProperties指定了配置?件的前缀

  @ConfigurationProperties注解的作?是把yml或者properties配置?件转化为bean。

  @EnableConfigurationProperties注解的作?是使@ConfigurationProperties注解?效。

  如果只配置@ConfigurationProperties注解,在spring容器中是获取不到yml或者properties配置?件转化的bean的。

   6.2 ConfigurationProperties的作?

    可以读取配置?件中的信息,并?动封装成实体类,该实体类的名称,默认是类名的?字母?写

    6.2.1 使用@ConfigurationProperties 可以替换@Value注解的使用

                    TRANSLATE with x English
Arabic Hebrew Polish
Bulgarian Hindi Portuguese
Catalan Hmong Daw Romanian
Chinese Simplified Hungarian Russian
Chinese Traditional Indonesian Slovak
Czech Italian Slovenian
Danish Japanese Spanish
Dutch Klingon Swedish
English Korean Thai
Estonian Latvian Turkish
Finnish Lithuanian Ukrainian
French Malay Urdu
German Maltese Vietnamese
Greek Norwegian Welsh
Haitian Creole Persian  
Bing Webmaster Portal Back     此页面的语言为中文(简体)   翻译为        
  • 中文(简体)
  • 中文(繁体)
  • 丹麦语
  • 乌克兰语
  • 乌尔都语
  • 亚美尼亚语
  • 俄语
  • 保加利亚语
  • 克罗地亚语
  • 冰岛语
  • 加泰罗尼亚语
  • 匈牙利语
  • 卡纳达语
  • 印地语
  • 印尼语
  • 古吉拉特语
  • 哈萨克语
  • 土耳其语
  • 威尔士语
  • 孟加拉语
  • 尼泊尔语
  • 布尔语(南非荷兰语)
  • 希伯来语
  • 希腊语
  • 库尔德语
  • 德语
  • 意大利语
  • 拉脱维亚语
  • 挪威语
  • 捷克语
  • 斯洛伐克语
  • 斯洛文尼亚语
  • 旁遮普语
  • 日语
  • 普什图语
  • 毛利语
  • 法语
  • 波兰语
  • 波斯语
  • 泰卢固语
  • 泰米尔语
  • 泰语
  • 海地克里奥尔语
  • 爱沙尼亚语
  • 瑞典语
  • 立陶宛语
  • 缅甸语
  • 罗马尼亚语
  • 老挝语
  • 芬兰语
  • 英语
  • 荷兰语
  • 萨摩亚语
  • 葡萄牙语
  • 西班牙语
  • 越南语
  • 阿塞拜疆语
  • 阿姆哈拉语
  • 阿尔巴尼亚语
  • 阿拉伯语
  • 韩语
  • 马尔加什语
  • 马拉地语
  • 马拉雅拉姆语
  • 马来语
  • 马耳他语
  • 高棉语