1 spring基本理念是簡化java開發。
使用以下4個策略簡化java開發
1) 基於POJO的輕量級和最小侵入性程式設計
2)透過使用DI和AOP實現鬆耦合
3)基於切面和慣例進行宣告式程式設計
4)透過切面和模板減少樣板式程式碼
2 依賴注入:物件的依賴關係將由負責協調系統中各個物件的第三方元件在創建物件時設定。物件無需自行建立或管理他們的依賴關係---依賴關係將會自動注入到需要他們的物件中。
3 組裝:創建應用元件之間協作的行為稱為組裝。
4 切割面程式設計被定義為促使應用程式分離關注點的技術。橫切關注點總是跨越系統的多個元件。
主要作用是幫助物件解耦。
5 使用範本消除樣板式程式碼。例如jJDBC/JMS/JNDI/REST都是使用模板程式碼的場景。
6 spring 容器,負責創建物件、組裝他們,配置它們並管理他們的整個生命週期。
spring容器可以分為兩種類型,bean工廠和ApplicationContext。一般更傾向使用ApplicationContext.
常見的有AnnotationConfigApplicationContext/AnnotationConfigWebApplicationContext/ClassPathXmlApplicationContext/FileSystemXmlApplicationContext/XmlWebApplicationContextApp#m
文件在所有上下文中尋找文件是所有上下文。 7 bean物件的配置,三種方法。 1)自動化組裝2)透過java程式碼組裝bean 3)透過xml組裝bean7.1 自動化組裝 @Component在一個類別上面使用,在類別上使用表明該類別是一個元件類,不過組件掃描預設是不開啟的。 可以使用下列技術進行開啟掃描@Configuration @ComponentScanpublic class PlayerConfig { }
@ComponentScan默认会扫描与配置类相同的包以及这个包下所有子包。 当然也可以在xml配置文件中使用<context:component-scan />元素开启扫描。 为组件扫描的bean命名。可以有两种方式 1)@Component("lonelyHeartsClub") 2)@Named("lonelyHeartsClub") 字符串相当于是xml配置文件中的id一般使用第一種方式。 7.1.1 元件掃描(component scanning) 7.1.2 自動組裝(autowiring)#自動組裝就是讓Spring自動滿足bean依賴的一種方法,在滿足依賴的過程中,會在spring應用上下文尋找匹配某個bean需求的其他bean。 關鍵字:@Autowired,@Inject。不過一般使用第一種方式。 說明:1)如果沒有發現需要的bean,spring會拋出例外。
以上是關於spring的基本理念詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!