面試中怎麼回答Spring,IOC,AOP

現在開始將會把我面試中遇到的問題做一個總結每一條問題作爲一篇簡短的博客敘述.

1.你對spring的理解是什麼?

答:

spring:
1)開源框架
2)IoC(控制反轉),將類的創建和依賴關係寫在配置文件裏,由配置文件注入,實現了鬆耦合
3)AOP 將安全,事務等於程序邏輯相對獨立的功能抽取出來,利用spring的配置文件將這些功能插進去,實現了按照方面編程,提高了複用性

或者答概念Spring是一個輕型容器(light-weight container),其核心是Bean工廠(Bean Factory),用以構造我們所需要的M(Model)。在此基礎之上,Spring提供了AOP(Aspect-Oriented Programming, 面向層面的編程)的實現,用它來提供非管理環境下申明方式的事務、安全等服務;對Bean工廠的擴展ApplicationContext更加方便我們實現J2EE的應用;DAO/ORM的實現方便我們進行數據庫的開發;Web MVC和Spring Web提供了Java Web應用的框架或與其他流行的Web框架進行集成。

面試的人會問到:struts跟spring的區別?

structs:和ww2等一樣,都是典型的mvc結構框架,至於mvc是什麼,地球人都知道,如果你不知道就google吧:),structs偏重於表現層,它自己起一個控制器的作用即controller,它可以良好的把表現層與業務層分離開來。 
spring:說白了就是一個大雜燴,提供了目前各種流行框架的集成,經典的有對hibernate的集成,此外,如mail,axis...各種都有。另外,它比較經典的就是IOC與AOP的功能,樓上已經有人說了,如果你不知道,去google。此外,它還提供了Spring MVC,它基於webflow,至於用法,去查它的文檔。 
structs的actionform是公認的敗筆,我用得痛苦得不得了。 
另外,你說的重複提交,那是瀏覽器的問題,和structs無關。看你如何指揮瀏覽器了,如果你用redirect,就沒有重複提交的問題,因爲瀏覽器已經重定向了。但是你用forward,那在你刷新的時候就是重複提交。 
Spring比較偏重於業務層,在頁面上一般是不顯示出來的。當然,如果你用Spring的MVC例外。

發佈了3 篇原創文章 · 獲贊 59 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章