1. spring 的輕量級入侵性:
-
依賴注入(DI):通過xml配置,生成bean,注入接口(接收多種實現)
-
面向切面(AOP):xml配置,定義切面類,切點,前置通知和後置通知。POJO類無需關注切面類,甚至不知道其存在。切面類同樣是一個bean。
-
模板的使用:減少樣板式代碼。JdbcTemplate
2. spring 容器 :創建,裝配,配置和管理對象的生命週期
(1) bean 工廠(org.springframework.beans.factory.BeanFactory)
(2) 應用上下文(org.springFramework.context.ApplicationContext)
- AnnotationConfigApplicationContext ——從一個或者多個基於Java的配置類加載spring上下文
- AnnotationConfigWebApplicationContext ——從一個或者多個基於Java的配置類加載spring web上下文
- ClasPathXmlApplicationContext ——從類路徑加載上下文定義
- FileSystemXmlApllicationContext——從文件系統加載
- XmlWebApplicationContext ——從web應用
3. spring 核心容器
- Beans
- Core
- Context
- Expression
- Context support