mvc框架為什么不能前后分離 Spring的AOP框架是如何搭建并實(shí)現(xiàn)的?
Spring的AOP框架是如何搭建并實(shí)現(xiàn)的?一、不使用spring框架的好處輕量:spring是輕量的,基本都的版本太約2mb。再控制反轉(zhuǎn):spring是從壓制反轉(zhuǎn)實(shí)現(xiàn)了松散耦合,對(duì)象們給出它們的依賴
Spring的AOP框架是如何搭建并實(shí)現(xiàn)的?
一、不使用spring框架的好處
輕量:spring是輕量的,基本都的版本太約2mb。
再控制反轉(zhuǎn):spring是從壓制反轉(zhuǎn)實(shí)現(xiàn)了松散耦合,對(duì)象們給出它們的依賴,而不是創(chuàng)建角色或里查依賴的對(duì)象們。
面向切面的編程(aop):spring接受正向切面的編程,因此把應(yīng)用到業(yè)務(wù)邏輯和系統(tǒng)服務(wù)沒(méi)分開。
容器:spring真包含并管理應(yīng)用中對(duì)象的生命周期和配置。
mvc框架:spring的web框架是個(gè)精心設(shè)計(jì)的框架,是web框架的個(gè)挺好的的替代品。
事務(wù)管理:spring提供一個(gè)減弱的事務(wù)管理接口,這個(gè)可以儲(chǔ)存到上至本地事務(wù)下至全局事務(wù)(jta)。
異常處理:spring可以提供比較方便的api把詳細(xì)技術(shù)相關(guān)的十分(諸如由jdbc,hibernateorjdo甩出的)被轉(zhuǎn)化為不對(duì)的unchecked極其。
二、spring由哪些模塊排成?
以下是spring框架的基本都模塊:
coremodule
beanmodule
contextmodule
expressionlanguagemodule
jdbcmodule
ormmodule
oxmmodule
javamessagingservice(jms)module
transactionmodule
webmodule
web-servletmodule
web-strutsmodule
web-portletmodule
mvc的缺點(diǎn)和優(yōu)點(diǎn)?
優(yōu)點(diǎn):
1.各施其職,不干涉
在MVC模式中,三個(gè)層各施其職,因此如果一旦哪一層的需求發(fā)生了什么了變化,就只需要你要改相應(yīng)的層中的代碼而不會(huì)引響到其它層中的代碼。
2.有利于開發(fā)中的分工
在MVC模式中,由于按層把系統(tǒng)分開,那你就能更好的實(shí)現(xiàn)開發(fā)中的分工。網(wǎng)頁(yè)設(shè)計(jì)人員可以進(jìn)行開發(fā)視圖層中的JSP,對(duì)業(yè)務(wù)熟悉的開發(fā)人員可開發(fā)完畢業(yè)務(wù)層,而其它開發(fā)人員可變更土地性質(zhì)再控制層。
3.可以增加組件的重用
分層后更促進(jìn)組件的賞識(shí)。如再控制層可的的成一個(gè)能是用組件,視圖層也可制作成通用的操作界面。
設(shè)計(jì)模式的確實(shí)現(xiàn)了分層開發(fā)。那里層都有吧各個(gè)層的作用。
5.減少了層與層之間的感情依賴,利于增強(qiáng)代碼的標(biāo)準(zhǔn)化開發(fā)
6.再用新的代碼業(yè)務(wù)邏輯替換時(shí),只要重命名相隨機(jī)的層,大嚇降低了我們的工作量,分工明確。
缺點(diǎn):
1.減少了系統(tǒng)結(jié)構(gòu)和利用的復(fù)雜性。對(duì)于很簡(jiǎn)單界面,不是很嚴(yán)不違背MVC,使模型、視圖與控制器只是分離,會(huì)提升結(jié)構(gòu)的復(fù)雜性,并肯定產(chǎn)生過(guò)多的更新操作,降低運(yùn)行效率。
2.視圖與控制器間的實(shí)在是太緊密的連接。視圖與控制器是彼此間只是分離,但雖然聯(lián)系密切的部件,視圖沒(méi)有控制器的存在,其應(yīng)用是很太遠(yuǎn)的,會(huì)大大降低,那樣的話就影響到了他們的的的委以重任。
3.視圖對(duì)模型數(shù)據(jù)的低效率訪問(wèn)。依據(jù)什么模型操作接口的不同,視圖很有可能需要過(guò)動(dòng)態(tài)創(chuàng)建才能完成任務(wù)相當(dāng)?shù)娘@示數(shù)據(jù)。對(duì)未變化數(shù)據(jù)的不必要的很頻繁不能訪問(wèn),也將損害到操作性能。
4.目前,象低級(jí)的界面工具或構(gòu)造器不支持MVC模式。改造這些工具以適應(yīng)適應(yīng)MVC需要和建立起再分離的部件的代價(jià)是不高的,最大限度地倒致在用MVC的困難。
5.請(qǐng),有些代碼反復(fù)重復(fù)的過(guò)于,則影響在換算開發(fā)中使用,因此我們要學(xué)框架,下面的鳥瞰圖結(jié)論了框架在MVC里都代替了哪些層。