91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring實現依賴關系注入之后的行為

發布時間:2021-06-04 16:19:44 來源:億速云 閱讀:139 作者:Leah 欄目:編程語言

Spring實現依賴關系注入之后的行為?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

一 配置

<?xml version="1.0" encoding="GBK"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://www.springframework.org/schema/beans"
   xsi:schemaLocation="http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-4.0.xsd">
   <bean id="steelAxe" class="org.crazyit.app.service.impl.SteelAxe"/>
   <!-- 配置chinese Bean,使用init-method="init"
      指定該Bean所有屬性設置完成后,自動執行init方法 -->
   <bean id="chinese" class="org.crazyit.app.service.impl.Chinese"
      init-method="init">
      <property name="axe" ref="steelAxe"/>
   </bean>
</beans>

二 接口

1 Axe

package org.crazyit.app.service;
public interface Axe
{
   public String chop();
}

2 Person

package org.crazyit.app.service;
public interface Person
{
   public void useAxe();
}

三 Bean

1 Chinese

package org.crazyit.app.service.impl;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.*;
import org.springframework.context.*;
import org.crazyit.app.service.*;
public class Chinese implements Person , InitializingBean
  , BeanNameAware, ApplicationContextAware
{
  private Axe axe;
  public void setBeanName(String beanName)
  {
    System.out.println("===setBeanName===");
  }
  public void setApplicationContext(ApplicationContext ctx)
  {
    System.out.println("===setApplicationContext===");
  }
  public Chinese()
  {
    System.out.println("Spring實例化主調bean:Chinese實例...");
  }
  // axe的setter方法
  public void setAxe(Axe axe)
  {
    System.out.println("Spring調用setAxe()執行依賴注入...");
    this.axe = axe;
  }
  public void useAxe()
  {
    System.out.println(axe.chop());
  }
  // 測試用的初始化方法
  public void init()
  {
    System.out.println("正在執行初始化方法 init...");
  }
  // 實現InitializingBean接口必須實現的方法
  public void afterPropertiesSet() throws Exception
  {
    System.out.println("正在執行初始化方法 afterPropertiesSet...");
  }
}

2 SteelAxe

package org.crazyit.app.service.impl;
import org.crazyit.app.service.*;
public class SteelAxe
   implements Axe
{
   public SteelAxe()
   {
      System.out.println("Spring實例化依賴bean:SteelAxe實例...");
   }
   public String chop()
   {
      return "鋼斧砍柴真快";
   }
}

四 測試類

package lee;
import org.springframework.context.*;
import org.springframework.context.support.*;
import org.crazyit.app.service.*;
public class BeanTest
{
  public static void main(String[] args)throws Exception
  {
    ApplicationContext ctx = new
      ClassPathXmlApplicationContext("beans.xml");
    Person p = ctx.getBean("chinese" , Person.class);
    p.useAxe();
  }
}

五 測試結果

Spring實例化依賴bean:SteelAxe實例...
Spring實例化主調bean:Chinese實例...
Spring調用setAxe()執行依賴注入...
===setBeanName===
===setApplicationContext===
正在執行初始化方法 afterPropertiesSet...
正在執行初始化方法 init...
鋼斧砍柴真快

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

剑川县| 永年县| 抚远县| 大方县| 永福县| 长沙市| 平定县| 海南省| 泽州县| 云南省| 东乌| 正阳县| 岗巴县| 四子王旗| 大邑县| 韩城市| 司法| 青冈县| 莱芜市| 龙山县| 拉孜县| 白银市| 宁海县| 闸北区| 南宫市| 石棉县| 湄潭县| 嵊州市| 金昌市| 建始县| 三明市| 布拖县| 连江县| 黑水县| 航空| 江北区| 方山县| 夹江县| 喀喇沁旗| 夏津县| 万载县|