Spring_用Spring容器建立物件並給屬性賦值
阿新 • • 發佈:2019-05-18
建立spring配置檔案:spring-config.xml。物件的建立和賦值都在這裡進行配置。
建立實體類,設定屬性
import java.util.List; import java.util.Map; public class BookBean { private Long bookId; private String bookName; private Float price; private List<String> fzb; private Map<String,String> fields; private CategoryBean categoryBean; //引用另外一個實體類//注意:
//如果有構造方法,建立物件時配置檔案則會你讀重寫的構造的方法,如果用setter方法賦值,則必須要過載一個空的構造方法。 public BookBean() { } public BookBean(Long bookId, String bookName, Float price) { this.bookId = bookId; this.bookName = bookName; this.price = price; }
}
1.建立單例物件:在整個專案執行期間,這個物件只有一個。
<bean class="com.lanou.demo.bean.BookBean" id="book1"/>
2.建立多例物件:每次取出的物件都是一個新的物件,
<bean class="com.lanou.demo.bean.BookBean" id="book1" scope="prototype"/>
3.建立物件是為物件屬性賦值,前提時屬性必須要有setter方法
<bean class="com.lanou.demo.bean.BookBean" id="book2"> <property name="bookId" value="1"/> <property name="bookName" value="西遊記"/> <property name="price" value="34.4"/> <!--為物件中的集合型別的屬性賦值--> <property name="fzb"> <list> <value>李忠仁</value> <value>馬琳</value> <value>陳穎媛</value> </list> </property> <!--為物件中的map型別的屬性賦值: --> <!--第一種方式:--> <property name="fields"> <map> <entry key="1" value="陳新元的誕生"/> <entry key="2" value="陳新元的滅亡"/> </map> </property> <!--第二種方式:--> <property name="fields"> <props> <prop key="1">陳新元的復活</prop> <prop key="1">陳新元的崛起</prop> </props> </property> <!--在一個bean中引用另外一個bean的物件,使用ref賦值--> <property name="categoryBean" ref="category1"/> </bean>
4.用構造方法給屬性賦值。
<bean class="com.lanou.demo.bean.BookBean" id="book3"> <!--為構造方法中bookId這個引數賦值--> <constructor-arg name="bookId" value="2"/> <constructor-arg name="bookName" value="西遊記"/> <constructor-arg name="price" value="45.5"/> </bean>
&n