Struts與Spring MVC的比較

 1 一,Struts2 
 2 
 3  1,每次請求(request)都會實例化一個控制類(Action),由於Model存在與Action中,即action是有狀態的,因此每次請求都要實例化,並且struts2的設計者認爲在強大的垃圾收集器下,用完就扔,並不會影響性能問題,並且還能夠保證線程的安全問題.
 4 
 5  
 6 
 7 2,自從struts2以後,裏面的設計除了action以外,大部分功能都圍繞着攔截器設計,若是稱咱們日常的邏輯爲橫性思惟的話,攔截器提供了縱向思惟擴展,在咱們執行action時,能夠任意提供其餘的應用,有點像aop的味道....
 8 
 9  
10 
11 3,至於struts2提供了很豐富的界面功能,,這點我覺的不必比較,由於在大多數應用開發中,,大多數人在界面上都運用其餘的第三方如jstl或者extjs等等...這個不做優點比較
12 
13  
14 
15 4,稍微看了下源碼,使用了代理(ActionProxy)以及反射機制進行(dispatch),有些人說這樣的代理是最損耗性能,,,如上面的設計者所說每次都建立一個實例沒事,更況且這個代理呢,,,在java企業應用時,大部分能夠就架構而去性能..
16 
17  
18 
19 二,spring mvc
20 
21  
22 
23 1,也有提供攔截器,,可是提供的並無sturts2徹底以及強大
24 
25  
26 
27 2,spring提供了annotation的註釋,使咱們更少的去配置xml,並且靈活度很是強,使開發起來更加便利
28 
29  
30 
31 3,spring 提供的handleAdapter,可以使servlet或者其餘本身實現的接口替換進來,至關靈活
32 
33  
34 
35 4,spring提供的mapping,action,view(jsp,velocity等),根據須要能夠實現最大限度的靈活性
36 
37  
38 
39 結:本人認爲,綜合了上述的內容,,
40 
41 一個團隊中決定使用哪一種框架開發,應該取決於團隊對某種框架的瞭解程度,,達到更高效的開發才最合適,,沒有最好的框架,只有最適合的框架...
相關文章
相關標籤/搜索