SpringMVC學習指南【筆記1】創建bean實例的方法和依賴注入


Spring MVC 主要從Spring框架、ServletJSP3個方面來講。

 

Java企業版技術包括JMSEJBJSFJPA

 

Java企業版容器:GlassFishJBossOracleWeblogicIBM WebSphere

 

TomcatJetty不是企業版容器,所以不能運行EJBJMS

 

Spring一共有20多個不同的模塊,這里主要講了3個模塊:corebeanspringmvc

 

corebean提供依賴注入解決方案。

 

Spring有兩種配置方式:xml和注解的方式。這兩種方式都至少需要一個包含beans信息的xml文件。

 

【控制反轉】

 

ApplicationContext代表Spring控制反轉容器,有兩個實現類:

ClassPathXmlApplicationContext在類加載路徑中加載配置文件;

FileSystemXmlApplicationContext在文件系統中加載。

 

例如:

ApplicationContext context = new ClassPathXmlApplicationContext(new string[]{“config1.xml”,”config2.xml”});

Product product = context.getBean(“product”,Product.class);

 

創建bean實例的方法:

1、通過構造器創建一個bean實例;

<bean name=”product” class=”com.xsl.entity.Product” />

2、通過工廠方法創建一個bean實例。

<bean id=”calendar” class=”java.util.Calendar” factory-method=”getInstance” />

 

Destroy Method的使用:可以在類被銷毀之前能執行指定方法。

<bean id=”executorService” class=”java.util.concurrent.Executosr” factory-method=”new CachedTheadPool” destory-method=”shutdown” />

通過指定的class的這個靜態方法new CachedTheadPool,創建idexecutorService的實例,最后在銷毀之前調用shutdown方法。

 

Spring也支持通過構造器來傳遞參數:

1、寫好實體類的構造方法;

2、bean中配置好參數的值。(參數的標簽是< constructor-arg />,除了可以通過名稱name來傳遞參數外,還支持通過索引index來傳遞參數;但是采用索引來傳遞參數的話,所有參數都必須傳遞,缺一不可)

 

A類依賴B類,為保證每個A實例都能包含B實例。

<bean name=”b1” class=”com.xsl.entity.B”>

    <constructor-arg name=”city” value=”shenzhen” />

    <constructor-arg name=”state” value=”yes” />

</bean>

1、setter方式依賴注入(使用<property />標簽)

<bean name=”a” class=”com.xsl.entity.A”>

    <property name=”b” ref=”b1” />

    <property name=”price” value=”9.9” />

</bean>

2、構造器方式依賴注入

<bean name=”a” class=”com.xsl.entity.A”>

    <constructor-arg name=”b” ref=”b1” />

    <constructor-arg name=”price” value=”9.9” />

</bean>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM