1. 程式人生 > >spring bean 和 java bean的區別

spring bean 和 java bean的區別

什麼是SpringBean?

引用《Spring實戰》(Spring in action) 中的一句話:在傳統的Java應用中,bean的生命週期很簡單。使用Java關鍵字new進行bean例項化,然後該bean就可以使用了。一旦該bean不再被使用,則由Java自動進行垃圾回收。相比之下,Spring 容器中的 bean 的生命週期就顯得相對複雜多了。

簡單的說:SpringBean是受Spring管理的物件。所有能受Spring容器管理的物件,都可以成為SpringBean。

Spring中如何建立Bean?

使用關鍵字 New,在 Spring 中,Bean 的建立是由 Spring 容器進行的,也就是說,在 Spring 中使用 Bean 的時候,不是由關鍵字 New

 來建立例項了

Spring中Bean裝配方式:

  1. 自動裝配
  2. 使用 XML 裝配
  3. 使用 Java 裝配

Spring Bean與JavaBean區別:

規範:

Spring容器對Bean 沒有特殊要求,不像JavaBean 一樣遵循一些規範(不過對於通過設值方法注入的Bean,一定要提供setter 方法。)

用處:

傳統javabean更多地作為值傳遞引數,而spring中的bean用處幾乎無處不在,任何元件都可以被稱為bean。

生命週期:

在傳統的Java應用中,bean的生命週期很簡單。使用Java關鍵字new進行bean例項化,然後該bean就可以使用了。一旦該bean不再被使用,則由Java自動進行垃圾回收

Spring中的Bean由Spring容器管理其生命週期行為,較為複雜

Spring 中的子bean 和父bean 可以是不同型別,但在Java 中的,子類是對父類的加強,是一種特殊的父類。
Spring 中bean 的繼承是例項之間的關係,主要表現為引數值的延續:而Java 中的繼承是類與類之間的關係,主要表現為方法及屬性的延續。
Spring 中子bean 不可作父bean 使用,不具備多型'性:而Java 中的子類例項完全可當成父類例項使用。