首頁常見問題正文

Java中Spring框架是干什么用的?

更新時間:2023-09-21 來源:黑馬程序員 瀏覽量:

  Spring是一個主流的Java Web框架,該框架是一個輕量級的應用框架,具有很高的凝聚力和吸引力。Spring框架因其強大的功能以及卓越的性能而受到眾多開發(fā)人員的喜愛。

  Spring是分層的JavaSE/EE full-stack輕量級開源框架,以IoC(Inverse of Control,控制反轉)和AOP(Aspect Oriented Programming,面向切面編程)為核心,使用基本的JavaBean完成以前只可能由EJB完成的工作,取代了EJB臃腫和低效的開發(fā)模式。

  Spring框架采用分層架構、根據不同的功能被劃分成了多個模塊、這些模塊大體可分為Data Access/Integration、Web、AOP、Aspects、Instrumentation、Core Container和Test,如圖28-1所示。

1695266978476_Spring的體系結構.jpg

  圖28-1 Spring的體系結構

  圖28-1中包含了Spring框架的所有模塊,這些模塊可以滿足一切企業(yè)級應用開發(fā)的要求,在開發(fā)過程中可以根據需求有選擇性地使用所需要的模塊。

  在實際開發(fā)中,通常服務器采用三層體系結構,分別為表現層(web)、業(yè)務邏輯層(service)、持久層(dao)。Spring對每一層都提供了技術支持,在表現層提供了與Struts2框架的整合,在業(yè)務邏輯層可以管理事務和記錄日志等,在持久層可以整合Hibernate和JdbcTemplate等技術。從設計上看,Spring框架給予了Java程序員更高的自由度,對業(yè)界的常見問題也提供了良好的解決方案,因此,在開源社區(qū)受到了廣泛的歡迎,并且被大部分公司作為Java項目開發(fā)首選框架。

  Spring具有簡單、可測試和松耦合等特點,不僅可以用于服務器端的開發(fā),也可以應用于任何Java應用的開發(fā)中。

  Spring框架的主要優(yōu)點具體如下:

  1.方便解耦,簡化開發(fā):

  Spring就是一個大工廠,可以將所有對象的創(chuàng)建和依賴關系的維護交給Spring管理。

  2.方便集成各種優(yōu)秀框架:

  Spring不排斥各種優(yōu)秀的開源框架,其內部提供了對各種優(yōu)秀框架(如Struts2、Hibernate、MyBatis等)的直接支持。

  3.降低Java EE API的使用難度:

  Spring對Java EE開發(fā)中非常難用的一些API(JDBC、JavaMail、遠程調用等)都提供了封裝,使這些API應用的難度大大降低。

  4.方便程序的測試:

  Spring支持JUnit4,可以通過注解方便地測試Spring程序。

  5.AOP編程的支持:

  Spring提供面向切面編程,可以方便地實現對程序進行權限攔截和運行監(jiān)控等功能。

  6.聲明式事務的支持:

  只需要通過配置就可以完成對事務的管理,而無須手動編程。

分享到:
在線咨詢 我要報名
和我們在線交談!