未經容許,不得轉載java
原做者:字母哥博客web
本文完整系列出自:springboot深刻淺出系列redis
首先你須要明白一件事情:Spring Boot項目目的並非替換Spring、SpringMVC,而是使他們用起來更加簡單。spring
Spring 框架數據庫
Spring框架最核心的特性就是依賴注入DI(Dependency Injecttion)和控制反轉IOC(Inversion Of Control)。若是你可以合理的使用DI和IOC,能夠開發出鬆耦合、擴展性好的的應用程序。編程
Spring MVCtomcat
Spring MVC提供了一種友好的方式來開發Web應用程序。 經過使用諸如Dispatcher Servlet,ModelAndView和View Resolver,能夠輕鬆開發Web應用程序。安全
Spring Bootspringboot
Spring 和 Spring MVC最大的弊病在於存在大量的配置,而且這些配置在不一樣的項目中具備很高的類似性。從而致使重複配置,繁瑣並且雜亂!bash
Spring Boot指望經過結合自動配置和starters來解決了這個問題。 另外,Spring Boot還提供了一些功能,能夠更快地構建可用於生產環境的應用程序。
Spring和Spring MVC應用程序裏面有大量的XML或Java Bean配置。Spring Boot爲解決這個問題,提供一種新的解決方案,新的思惟方式。
springboot思考的方式:是否是能夠更加智能一點,當Spring中加入一些新的jar包,能夠自動的配置一些bean。 好比:Spring MVC JAR位於類路徑中時,自動配置Dispatcher Servlet。固然,當這些自動的默認配置不符合咱們的要求的時候,咱們能夠修改。
Spring Boot Starter是一組被依賴第三方類庫的集合。
若是你要開發一個web應用程序,就經過包管理工具(如maven)引入spring-boot-starter-web就能夠了,而不用分別引入下面這麼多依賴類庫,spring-boot-starter-web一次性幫你引入下面的這些經常使用類庫。
全部的Spring Boot項目默認使用spring-boot-starter-parent做爲應用程序的父項目。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>
複製代碼
繼承父項目的好處在於: 統一java版本配置和其餘的一些依賴類庫的版本。也就是說,你引入的第三方類庫不要加版本號,父項目替你管理版本,並且是通過兼容性測試的。比你本身隨便引入一個版本兼容性更好。
固然父項目只能幫你管理一些經常使用類庫的版本,若是你引入一些不經常使用的jar,仍是要本身管理版本號及兼容性!
Spring boot打成jar包,默認包含嵌入式的web容器:tomcat。你能夠簡單的使用以下命令啓動一個web服務:
java -jar springboot-demo.jar
複製代碼
這更有利於微服務的部署及微服務的構建、啓動、擴容。Spring Boot還支持Jetty和Undertow做爲web容器。
Spring Data的目標是提供一種更友好的方式或者是API來存取數據。包括對於關係型數據庫和NOSQL數據的支持。好比:
固然,Spring Data還有更多好用的特性和支持等待你去探索!
在 Spring Boot 1.0 項目中 src/main/resources 路徑下新建一個 banner.txt 文件,文件中寫入一些字符,啓動項目時就會發現默認的 Banner 被替換了,到了 Spring Boot 2.0 如今能夠支持 Gif 文件的打印,Spring Boot 2.0 在項目啓動的時候,會將 Gif 圖片的每個畫面,按照順序打印在日誌中,全部的畫面打印完畢後,纔會啓動 Spring Boot 項目。
未經容許,不得轉載
原做者:字母哥博客
本文完整系列出自:springboot深刻淺出系列