【译】spring框架中的@Import注解

发布时间:2019-11-19 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了【译】spring框架中的@Import注解脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

SPRing框架中的@Import注解

在之前的文章中,作者介绍了Spring JavaConfig. 这是除了使用传统的XML文件之外,spring带来的新的选择。同样作者列出了作为Java config一部分的annotations.如果你是spring的新手,这里也有大量的关于springspring 4的资料索引。

在列表中,@Import 是被用来整合所有在@Configuration注解中定义的bean配置。这其实很像我们将多个xml配置文件导入到单个文件的情形。@Import注解实现了相同的功能。本文会介绍使用@Import注解来导入spring工程中的JavaConfig文件.

在下面的例子中,我创建了两个配置文件,然后导入到主配置文件中。最后使用主配置文件来创建context.

代码

Car.java package javabeat.net.basic; public interface Car {     public void print(); }
Toyota.java  package javabeat.net.basic; import org.springframework.stereotyPE.component; @Component public class Toyota implements Car{     public void print(){         System.out.println("I am Toyota");     } }
Volkswagen.java package javabeat.net.basic; import org.springframework.stereotype.COMponent; @Component public class Volkswagen implements Car{     public void print(){         System.out.println("I am Volkswagen");     } }
JavaConfigA.java  package javabeat.net.basic;  import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;  @Configuration public class JavaConfigA {     @Bean(name="volkswagen")     public Car getVolkswagen(){         return new Volkswagen();     } }
JavaConfigB.java  package javabeat.net.basic;  import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;  @Configuration public class JavaConfigB {     @Bean(name="toyota")     public Car getToyota(){         return new Toyota();     } }
ParentConfig.java  package javabeat.net.basic;  import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import;  @Configuration @Import({JavaConfigA.class,JavaConfigB.class}) public class ParentConfig {     //Any other bean definITions }
ContextLoader.java  package javabeat.net.basic;  import org.springframework.context.annotation.AnnotationConfigApplicationContext;  public class ContextLoader {     public static void main (String args[]){         AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(ParentConfig.class);         Car car = (Toyota)context.getBean("toyota");         car.print();         car = (Volkswagen)context.getBean("volkswagen");         car.print();         context.close();     } }

程序执行输出
I am Toyata
I am Volkswagen

总结

本文作者介绍了@Import注解的使用。这个注解帮助我们将多个配置文件(可能是按功能分,或是按业务分)导入到单个主配置中,以避免将所有配置写在一个配置中。

脚本宝典总结

以上是脚本宝典为你收集整理的【译】spring框架中的@Import注解全部内容,希望文章能够帮你解决【译】spring框架中的@Import注解所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。