學JAVA的小伙伴速碼:SSM框架的簡單介紹

學框架就一定要學的SSM框架大家都學會了嗎?小編這里就為框架入門的小伙伴們簡單的整理了SSM的概念、原理和優(yōu)勢等內(nèi)容,剛剛學SSM的同學千萬不要錯過喲。



一、SSM框架的簡單介紹

1、什么是SSM框架呢?

SSM框架就是Spring、Spring?MVCMyBatis框架的縮寫,是標準的MVC模式,將整個系統(tǒng)劃分為四層:表現(xiàn)層、controller層service層、DAO層。使用SSM框架的好處是在于其易復用和簡化開發(fā),掌握了每個框架的核心思想。

其中,spring MVC負責請求的轉(zhuǎn)發(fā)和視圖管理;spring實現(xiàn)業(yè)務(wù)對象管理;MyBatis作為數(shù)據(jù)對象的持久化引擎。


1)Spring?

Spring是一個開源框架,Spring是于2003 年興起的一個輕量級的Java 開發(fā)框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來。它是為了解決企業(yè)應(yīng)用開發(fā)的復雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。 簡單來說,Spring是一個輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。



2SpringMVC?????

Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring MVC 分離了控制器、模型對象、分派器以及處理程序?qū)ο蟮慕巧@種分離讓它們更容易進行定制。


3)MyBatis

MyBatis本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,并且改名為MyBatis。MyBatis是一個基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAO)。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及結(jié)果集的檢索。MyBatis使用簡單的XML或注解用于配置和原始映射,將接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java對象)映射成數(shù)據(jù)庫中的記錄。




二、SSM操作原理

1、Spring?MVC:


客戶端發(fā)送請求到DispacherServlet(分發(fā)器),由DispacherServlet控制器查詢HanderMapping,找到處理請求的Controller。Controller調(diào)用業(yè)務(wù)邏輯處理后,返回ModelAndView;.DispacherSerclet查詢視圖解析器,找到ModelAndView指定的視圖,視圖負責將結(jié)果顯示到客戶端。


2、Spring:

IOC容器應(yīng)該就是我們平時開發(fā)接觸最多的,它可以裝載bean,有了這個機制,我們就不用在每次使用這個類的時候為它初始化,很少看到關(guān)鍵字new。另外spring的aop,事務(wù)管理等等都是我們經(jīng)常用到的。


3、MyBatis

MyBatis是對jdbc的封裝,它讓數(shù)據(jù)庫底層操作變的透明。MyBatis的操作都是圍繞一個sqlSessionFactory實例展開的。MyBatis通過配置文件關(guān)聯(lián)到各實體類的Mapper文件,Mapper文件中配置了每個類對數(shù)據(jù)庫所需進行的sql語句映射。在每次與數(shù)據(jù)庫交互時,通過sqlSessionFactory拿到一個sqlSession,再執(zhí)行sql命令。


三、SSM框架的優(yōu)勢:

1、Spring的優(yōu)勢:

Spring的核心思想是IoC(控制反轉(zhuǎn)),即不再需要程序員去顯式地“new”一個對象,而是讓Spring框架幫你來完成這一切。通過Spring的IOC特性,將對象之間的依賴關(guān)系交給了Spring控制,方便解耦,簡化了開發(fā)。

2、Spring MVC的優(yōu)勢:

(1)Spring?MVC是使用了MVC設(shè)計思想的輕量級web框架,對web層進行解耦,使我們開發(fā)更簡潔;

(2)與Spring無縫銜接;

(3)靈活的數(shù)據(jù)驗證,格式化,數(shù)據(jù)綁定機制。

3、MyBatis的優(yōu)勢:

(1)數(shù)據(jù)庫的操作(sql)采用xml文件配置,解除了sql和代碼的耦合;

(2)提供映射標簽,支持對象和和數(shù)據(jù)庫orm字段關(guān)系的映射,支持對象關(guān)系映射標簽,支持對象關(guān)系的組建;

(3)提供了xml標簽,支持動態(tài)的sql。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容