GenericBeanDefinition是一站式的標准bean definition,除了具有指定類、可選的構造參數值和屬性參數這些其它bean definition一樣的特性外,它還具有通過parenetName屬性來靈活設置parent bean definition。
通常, GenericBeanDefinition用來注冊用戶可見的bean definition(可見的bean definition意味着可以在該類bean definition上定義post-processor來對bean進行操作,甚至為配置parent name做擴展准備)。RootBeanDefinition / ChildBeanDefinition用來預定義具有parent/child關系的bean definition。
一個RootBeanDefinition定義表明它是一個可合並的bean definition:即在spring beanFactory運行期間,可以返回一個特定的bean。RootBeanDefinition可以作為一個重要的通用的bean definition 視圖。
RootBeanDefinition用來在配置階段進行注冊bean definition。然后,從spring 2.5后,編寫注冊bean definition有了更好的的方法:GenericBeanDefinition。GenericBeanDefinition支持動態定義父類依 賴,而非硬編碼作為root bean definition。其中RootBeanDefinition是最常用的實現類,它對應一般性的
在 配置文件中可以定義父