SpringBoot2.0-詳細入門教程(一)

SpringBoot介紹

什麼是SpringBoot

  • SpringBoot是一個快速開發框架,能夠幫助我們快速整合第三方框架(Maven依賴關係##Maven繼承),完全採註解化,簡化XML配置,內置嵌入Http服務器(Tomcat、Jetty),默認嵌入Tomcat服務器。
  • 最終以Java應用程序進行執行。
  • SpringBoot項目中沒有web.xml核心第三方框架
  • 原理:完全採用註解化,Spring3.0之後採用註解方式啓動SpringMVC/內置Http服務器Java創建Tomca,底層通過Maven依賴繼承方式實現

爲什麼使用SpringBoot

傳統項目

  • 衝突問題:整合起來繁瑣
  • 打包方式:打包成一個war放入到TomcarWebaaps目錄下進行執行

Maven、以Java應用程序進行執行

  • Maven:是一個項目管理工具,它包含了一個項目對象模型 (Project Object
    Model),一組標準集合,一個項目生命週期(Project Lifecycle),一個依賴管理系統(Dependency
    Management
    System),和用來運行定義在生命週期階段(phase)中插件(plugin)目標(goal)的邏輯。當你使用 Maven的時候,你用一個明確定義的項目對象模型來描述你的項目,然後Maven可以應用橫切的邏輯,這些邏輯來自一組共享的(或者自定義的)插件。
  • Maven 有一個生命週期,當你運行 mvn install 的時候被調用。這條命令告訴 Maven
    執行一系列的有序的步驟,直到到達你指定的生命週期。遍歷生命週期旅途中的一個影響就是,Maven
    運行了許多默認的插件目標,這些目標完成了像編譯和創建一個 JAR 文件這樣的工作。
    此外,Maven能夠很方便的幫你管理項目報告,生成站點,管理JAR文件,等等。
  • 以Java應用程序進行執行:不在是傳統的打包成一個war包放到tomcat執行,而是使用Java代碼創建tamcat執行

SSH和SSM

SSH框架= Struts + Spring + Hibernate
SSM框架=Spring-MVC + Spring + MyBatis
Struts和Spring-MVC都是負責取轉發的,但是兩者針對request的請求上面區別很大。

  • Strust:是針對一個Action類來進行請求的,即一個Action類對應於一個請求,所以類攔截,請求的數據類共享,入口級別是Filter級別的。
  • Spring-MVC:則是針對於方法級別的請求的,也就是一個方法對應於一個請求,屬於方法攔截,請求的數據方法不共享。配置文件相對來說較爲少,容易上手,可以加快軟件開發的速度,親身體驗有效,入口是Servlet級別。
    在這裏插入圖片描述
    針對Hibernate和MyBitas對持久化類進行操作 ,他們之間的區別可以整理如下
  • Hibernat是一種O/R關係型,即完成數據庫表和持久化類之間的映射,而MyBitas是針對的SQL-Maping,個人理解是一種Hibernate把數據庫給封裝好以後,可以調用相應的數據庫操作語句HQL,而MyBitas則是用的原始的數據庫操作語句。
  • 基於1中的原因,則Hibernate優化起來相對MyBitas較難。
  • MyBitas入門較快,而Hibernate掌握起來相對較難。
  • 針對高級查詢,Mybatis需要手動編寫SQL語句,以及ResultMap。而Hibernate有良好的映射機制,開發者無需關心SQL的生成與結果映射,可以更專注於業務流程。
  • Hibernate數據庫移植性很好,MyBatis的數據庫移植性不好,不同的數據庫需要寫不同SQL。
  • 總結:SSH個人雖然感覺很笨重,但是對於理解MVC模型乃至IOC來說還是不錯的,蠻適合練手的,但是SSM則是使用起來讓人感覺飛快,無論面向OOP還是面向AOP編程,都給人一種通透的快感
    在這裏插入圖片描述

SpringBoot與SpringCloud的關係

  • SpringBoot :是一個快速開發的框架,能夠快速的整合第三方框架,簡化XML配置,全部採用註解形式,內置Tomcat容器,幫助開發者能夠實現快速開發,SpringBoot的Web組件 默認集成的是SpringMVC框架。
    SpringMVC是控制層。
  • SpringCloud:依賴與SpringBoot組件,使用SpringMVC編寫Http協議接口,同時SpringCloud是一套完整的微服務解決框架
    功能非常強大,註冊中心、客戶端調用工具、服務器治理(負載均衡、斷路器、分佈式配置中心、網關、服務鏈路、消息總線等)
  • 關係:SpringCloed 相對於SpringBoot爲依賴關係
    SpringBoot+SpringCloed 是微服務
    SpringBoot實現快速開發

SpringBoot與SpringMVC的關係

SpringBoot 是一個快速開發的框架,能夠快速的整合第三方框架,簡化XML配置,全部採用註解形式,內置Tomcat容器,幫助開發者能夠實現快速開發,SpringBoot的Web組件 默認集成的是SpringMVC框架。
SpringMVC是控制層。
SpringMVC 3.0 後產生註解,支持註解方式啓動SpringMVC
關係:SpringBoot包含StringMVC

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章