在spring 中使用注解,常使用@Autowired, 默认是根据类型Type来自动注入的。但有些特殊情况,对同一个接口,可能会有几种不同的实现类,而默认只会采取其中一种的情况下 @Primary 的作用就出来了。下面是个简单的使用例子。有如下一个接口 ...
Primary 注解 刚看到这个,还以为是持久层的注解呢,以为和 Id差不多,一查才知道,这两个风马牛不相及,反倒和 Qualifier以及 Resource有点像了,但是相比而言,后面两个更加的灵活。 可以看这两个博客 博客一 博客二 我觉得第一篇博客讲的不太对,结合第二篇应该就能理解第一篇中的 而 Qualifier这个注解则指定某个bean有没有资格进行注入 这句话了。 当一个接口,有几种 ...
2017-07-11 23:06 0 1467 推荐指数:
在spring 中使用注解,常使用@Autowired, 默认是根据类型Type来自动注入的。但有些特殊情况,对同一个接口,可能会有几种不同的实现类,而默认只会采取其中一种的情况下 @Primary 的作用就出来了。下面是个简单的使用例子。有如下一个接口 ...
当一个接口有多个不同实现类时,使用注解@Autowired时会报 org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type [xxxx] is defined ...
1.问题 当一个接口有2个不同实现时,使用@Autowired注解时会报org.springframework.beans.factory.NoUniqueBeanDefinitionException异常信息 2.方案1-@Qualifier 使用 ...
当一个接口存在多个实现的时候会报org.springframework.beans.factory.NoUniqueBeanDefinitionException类似的异常信息,项目中碰到引用别人事先写好的框架,但是对于其中个别实现并不是很需要,因此可以通过使用@Primary注解进行处理 ...
当一个接口有两个实现类时,并两个实现类都被 Spring 管理,则需要对某个类进行 @Primary 注解,表示优先选择此实现类。 否则会抛出 异常 org.springframework.beans.factory.NoUniqueBeanDefinitionException ...
最近翻看一个新的项目,发现一个有趣的一点,就是这个项目的javabean并没有写对应属性的get、set、equals、toStirg等方法,却可以为属性赋值。 仔细看发现有一个@Data注解。感觉有点意思就研究一下。这个注解是属于Lombok包的。 Lombok优点: Lombok可以最大 ...
简单的说,就是当Spring容器扫描到某个接口的多个 bean 时,如果某个bean上加了@Primary 注解 ,则这个bean会被优先选用,如下面的例子: 因为 HibernateFooRepository 上面有注解@Primary,所以它将优先 ...
@Primary:在众多相同的Bean中,优先使用@Primary注解的Bean。 这个和@Qualifier有点区别,@Qualifier指的是使用哪个Bean进行注入。 参考: http://blog.csdn.net/asdfsadfasdfsa/article/details ...