春の初期化:AnnotationConfigApplicationContext

はじめに

使用AnnotationConfigApplicationContext可以实现基于Java的配置类加载Spring的应用上下文

パッケージcom.sixinshuier.springbean.definition; 

import com.sixinshuier.springbean.Config.BeanConfiguration;
import com.sixinshuier.springbean.domain.Toy;
import org.springframework.context.annotation.AnnotationConfigApplicationContext; 

/ ** 
 * AnnotationConfigApplicationContext的使用
 * / 
public  class AnntationConfigTest {
     public  static  void main(String [] args){
         // 创建BeanFactoryコンテナ 
        AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext();
        // 注構成クラス(配置类)
        applicationContext.register(BeanConfiguration。クラス);
         // Springアプリケーションコンテキスト起動
        applicationContext.refreshを();
         // 依存ルック豆 
        玩具toy1 =(グッズ)applicationContext.getBean( "Toy1"へ); 
        System.out.printlnは(toy1。 getName() + ":" + toy1.getSize()); 

        Toy toy2 =(Toy)applicationContext.getBean( "Toy2" ); 
        System.out.println(toy2.getName() + ":" + toy2.getSize( )); 

        // Springアプリケーションをオンラインで閉じます
        applicationContext.close(); 
    } 
}

 

 

パッケージcom.sixinshuier.springbean.Config; 

import com.sixinshuier.springbean.domain.Toy;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration //相当のスプリングxmlの<beans> 
パブリック クラスBeanConfiguration { 

    @Bean(name = "Toy1" )//相当の<bean>
     public Toy toy(){ 
        Toy toy = new Toy(); 
        toy.setName( "フットボール" ); 
        toy.setSize( "big" );
        おもちゃを返す; 
    }

    @Bean(name = "Toy2" public Toy toy1(){ 
        Toy toy = new Toy(); 
        toy.setName( "卓球" ); 
        toy.setSize( "小さい" );
        おもちゃを返す; 
    } 
}

 

おすすめ

転載: www.cnblogs.com/shix0909/p/12716070.html