はじめに
使用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( "小さい" ); おもちゃを返す; } }