SSM框架,是Spring+SpringMVC+MyBatis的縮寫,這個是繼SSH之后,目前比較主流的JavaEE企業(yè)級框架,適用于搭建各種大型的企業(yè)級應(yīng)用系統(tǒng)。
1.Spring簡介
Spring開源框架,Spring是于2003年興起的一個輕量級的Java開發(fā)框架,由RodJohnson在其著作ExpertOne-On-OneJ2EEDevelopmentandDesign中闡述的部分理念和原型衍生而來。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。簡單來說,Spring是一個輕量級的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。
A.控制反轉(zhuǎn)(IOC)是什么呢?
IOC:控制反轉(zhuǎn)也叫依賴注入。利用了工廠模式將對象交給容器管理,你只需要在spring配置文件總配置相應(yīng)的bean,以及設(shè)置相關(guān)的屬性,讓spring容器來生成類的實(shí)例對象以及管理對象。在spring容器啟動的時候,spring會把你在配置文件中配置的bean都初始化好,然后在你需要調(diào)用的時候,就把它已經(jīng)初始化好的那些bean分配給你需要調(diào)用這些bean的類(假設(shè)這個類名是A),分配的方法就是調(diào)用A的setter方法來注入,而不需要你在A里面new這些bean了。[注意]:面試的時候,如果有條件,畫圖,這樣更加顯得你懂了
B.面向切面(AOP)又是什么呢?
首先,需要說明的一點(diǎn),AOP只是Spring的特性,它就像OOP一樣是一種編程思想,并不是某一種技術(shù),AOP可以說是對OOP的補(bǔ)充和完善。OOP引入封裝、繼承和多態(tài)性等概念來建立一種對象層次結(jié)構(gòu),用以模擬公共行為的一個集合。當(dāng)我們需要為分散的對象引入公共行為的時候,OOP則顯得無能為力。也就是說,OOP允許你定義從上到下的關(guān)系,但并不適合定義從左到右的關(guān)系。例如日志功能。日志代碼往往水平地散布在所有對象層次中,而與它所散布到的對象的核心功能毫無關(guān)系。在OOP設(shè)計(jì)中,它導(dǎo)致了大量代碼的重復(fù),而不利于各個模塊的重用。將程序中的交叉業(yè)務(wù)邏輯(比如安全,日志,事務(wù)等),封裝成一個切面,然后注入到目標(biāo)對象(具體業(yè)務(wù)邏輯)中去。
實(shí)現(xiàn)AOP的技術(shù),主要分為兩大類:一是采用動態(tài)代理技術(shù),利用截取消息的方式,對該消息進(jìn)行裝飾,以取代原有對象行為的執(zhí)行;二是采用靜態(tài)織入的方式,引入特定的語法創(chuàng)建“方面”,從而使得編譯器可以在編譯期間織入有關(guān)“方面”的代碼。[簡單點(diǎn)解釋],比方說你想在你的biz層所有類中都加上一個打印‘你好,AOP’的功能這你經(jīng)可以用aop思想來做,你先寫個類寫個方法,方法經(jīng)實(shí)現(xiàn)打印‘你好,AOP’讓后你Ioc這個類ref=“biz.*”讓每個類都注入。
2.SpringMVC簡介
SpringMVC屬于Springframework的后續(xù)產(chǎn)品,已經(jīng)融合在SpringWebFlow里面,它原生支持的Spring特性,讓開發(fā)變得非常簡單規(guī)范。SpringMVC分離了控制器、模型對象、分派器以及處理程序?qū)ο蟮慕巧?,這種分離讓它們更容易進(jìn)行定制。
3.MyBatis簡介
MyBatis本是apache的一個開源項(xiàng)目iBatis,2010年這個項(xiàng)目由apachesoftwarefoundation遷移到了googlecode,并且改名為MyBatis。MyBatis是一個基于Java的持久層框架。iBATIS提供的持久層框架包括SQLMaps和DataAccessObjects(DAO)MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及結(jié)果集的檢索。MyBatis使用簡單的XML或注解用于配置和原始映射,將接口和Java的POJOs(PlainOldJavaObjects,普通的Java對象)映射成數(shù)據(jù)庫中的記錄??梢赃@么理解,MyBatis是一個用來幫你管理數(shù)據(jù)增刪改查的框架。
以上就是天津卓眾教育java培訓(xùn)機(jī)構(gòu)的小編針對“Java ssm框架視頻,基本概念”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請?jiān)诰€咨詢,有專業(yè)老師隨時為你服務(wù)。
Java視頻