SSM和SpringBoot的區別

本質區別:

1、SSM是三個臭皮匠,Spring IoC、Spring MVC、Mybatis的組合;

2、SpringBoot的諸葛亮,沒有和任何MVC框架綁定。

我們接下來詳細說說Spring Boot和SSM本質上的區別

SSM是什麼?是三個臭皮匠(裨將),Spring loC、Spring MVC、Mybatis的組合。SSM限定死了你只能開發Java Web應用,而且MVC框架必須用Spring MVC,持久層必須用Mybatis,無他!我說的是SSM包含這些啊,沒說你不能在這三個基礎上自己加其他框架和庫上去。

Spring Boot呢?諸葛亮。有了諸葛亮,你用兵的可選方案更多,不管用哪幾員將軍,出師更順利。Spring Boot沒有和任何MVC框架綁定!沒有和任何持久層框架綁定!沒有和任何其他業務領域的框架綁定!插播一條廣告:需要開通正版IDEA的可以聯繫我,56元一年,正版授權激活,官網可查有效期,有需要的加我微信:poxiaozhiai6,備註:912。

你開發Web應用可以用Spring Boot。用spring-boot-starter-web就幫你配置好了Spring MVC。你不想用Spring MVC了,換成Spring WebFLux(用spring-boot-starter-webflux)寫響應式Web應用可以嗎?當然可以,而且這個是Spring 5主推的新Web框架。

你不開發Web應用,只實現純粹的數據層業務,開發Spring Cloud Stream和Task也可以。

數據持久層,你可以用Spring Data項目下的任何子項目
JPAJDBC MongoDB Redis LDAP Cassandra Couchbase Noe4Hadoop Elasticsearch....
,當然用非Spring官方支持的Mybatis也可以。只要用上對應技術或框架的spring-boot-starter- xxx就可以了。

但是必須要知道

Spring Boot提供的只是這些starters,這些Starter依賴了(maven dependence)對應的框架或技術,但不包含對應的技術或框架本身!

這就是很多人用“全家桶”這個詞來比喻Spring Boot的錯誤之處。肯德基麥當勞的全家桶裏麪包含了雞腿、雞翅、雞塊,這些東西都是包含在裏面的,而且是不可選擇的。你喫的完是這些,喫不完也是這些。你喜歡喫其中幾樣,也可能不喜歡喫其中幾樣。但是Spring Boot不是啊,Spring Boot沒有包含Spring MVC,沒有包含Mybatis,只有他們對應的starters。

一個更恰當的比喻是,Spring MVC、Spring Data、Websocket這東西對應電腦硬件的顯卡、聲卡、硬盤、網卡。Spring Boot提供的Starters對應這些硬件的驅動。只要你在主板上插上了這些硬生,Spring Boot提供的對應驅動就能讓能讓你享受到即插即用(Plug & Play)的體驗。Spring Boot提供的是驅動,沒有包含顯卡、聲卡這些硬件本身,這些驅動能夠讓你DIY的電腦順暢的引導(boot)並運行起來。

很多Java服務器端9的常見第三方框架,Spring Boot都能用Convention over Confiquration的方式幫你默認配置好。

具體支持什麼看這裏:Spring Boot Reference Guide

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