本篇知識來源于幾位大佬的教程,1、2、3,
0.前言
在為學習Spring的時候,我們開發Web專案的流程是什么?
-
創建物體類 Bean層
-
Dao層 操作資料庫
-
service 操控Dao物件
-
servlet 接受前端訊息,呼叫相應方法,
1.介紹
Spring是一款開放源代碼的JEE應用程式框架,以 IoC(Inverse of Control,控制反轉)和 AOP(Aspect Oriented Programming,面向切面編程)為內核,Spring框架主要由七部分組成,分別是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC,
2.優點
2.1松耦合
組件(Bean)之間依賴很松,模塊可以輕松替換,
之前都是面向介面編程,通過DaoFactroy等方法來實作松耦合,
spring給我們帶來了更合適的方法來實作松耦合(IOC控制反轉),
2.2非侵入式
侵入式:對于EJB、Struts2等一些傳統的框架,通常是要實作特定的介面,繼承特定的類才能增強功能
非侵入式:對于Hibernate、Spring等框架,對現有的類結構沒有影響,就能夠增強JavaBean的功能
組件(Bean)本身只是簡單的Java物件,無需任何特殊處理,非常簡單,
3.面向切面編程(AOP)
面向切面編程的主要作用是,在不修改源代碼的情況下,可以給目標類打補丁,讓其執行補丁中的代碼,
動態代理就是一種切面編程,詳情見設計模式板塊,
AOP編程可以簡單理解成:在執行某些代碼前,執行另外的代碼,
4.IOC控制反轉與DI依賴注入
依賴注入Dependency Injection:框架創建了類所依賴的物件,然后把這些物件傳給(注入)依賴它們的類,
控制反轉Inversion of Control:物件的創建交給外部容器完成
控制反轉時通過外部容器完成的,Spring為我們提供了這個容器,我們一般叫它IOC容器,
IOC的思想有什么好處呢?ioc的思想最核心的地方在于,資源不由使用資源的雙方管理,而由不使用資源的第三方管理,這可以帶來很多好處,第一,資源集中管理,實作資源的可配置和易管理,第二,降低了使用資源雙方的依賴程度,也就是我們說的耦合度,
來源于這里,
看完后我個人的理解就是,依賴是根據資料在其他類里面創造新的物件,而注入的理解將類作為引數傳過來直接賦予值,這樣可避免一個類維修后,需要去改變另一個類的代碼,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/263228.html
標籤:其他
下一篇:Java 模擬資料庫連接池的實作
