java spring配置中设置两个相同id的bean可以吗?

代码如下:
<bean id="userService" parent="transactionProxy">
<property name="target" ref="iUserService"></property>
</bean>
<bean id="userService" class="test.service.UserServiceImpl"></bean>

不可以的,ID必须唯一,不然会导致不知道实例化哪个BEAN
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-09-16
不行的哦,要是在MyEclipse里面的话,校验器会直接提示有错误的
第2个回答  2014-09-16
不可以, 会报错的

Spring 中,有两个 id 相同的 bean 会报错吗?为什么?
是的,Spring 中不能有两个 id 相同的 bean,否则 Spring 容器启动时会报错。因为 id 这个属性表示一个 Bean 的唯一标志符号,所以 Spring 在启动的时候会去验证 id 的唯一性,一旦发现重复就会报错。这个错误发生在 Spring 对 XML 文件进行解析转化为 BeanDefinition 的阶段 。

spring中怎么注入两个实现同一个接口的bean-CSDN论坛
你可以选是哪一个,应该不冲突的,为了解耦和,最好是一个接口对应一个实现类,你可以写两个<bean>啊,就是两个bean的id不一样,你在service层的时候注入的接口类型的变量,都是一个接口类型,但是根据你注入的不通的实现类,

spring beans中id和name配置一样时,getbean先用哪个
配置文件中不允许出现两个id相同的,否则在初始化时即会报错;但配置文件中允许出现两个name相同的,在用getBean()返回实例时,后面一个Bean被返回,应该是前面那个被后面同名的 覆盖了。有鉴于此,为了避免不经意的同名覆盖的现象,尽量用id属性而不要用name属性。如果id和name都没有指定,则用类全名...

spring配置中id和name属性的区别
一般情况下,配置一个bean时,需要指定它的ID属性作为bean的名称。<bean id="helloWorld" class="com.learnSpring.hellWorld"\/>1 Q:如果在spring环境下,如果出现多个配置ID属性值一样的bean 如果spring是默认设定,即可以覆盖bean定义,则根据spring配置文件加载的顺序,后面同名的bean会覆盖掉前面定义的...

spring:spring的配置文件中配置那么多bean又是id又是name的有什么用啊...
bean是他的元素,元素里面有id name 等属性。id则是唯一标识,以便用到时找到id就可以。

Spring多项目bean冲突及properites读取验证
很容易理解,primary对于不同ID相同的Class实例来说只能有一个,对于相同的ID实例则会直接覆盖 正常启动,可以看到创建了两个相同类型的实例 可以看到发生覆盖情况,因此可以总结出 bean是否发生覆盖只跟beanId有关而跟bean的类型无关 当两个相同的类型的bean都被配置成primary时会发生异常 当需要配置多...

...了同一共bean,共bean里有map,想这两个bean可以共同访问这个map_百...
两个不同的bean里都引用同一个bean对象 即A B 同时都引用了C,这时候如果想数据共享,那么你要在spring里设置这个C为单例 在spring依赖注入配置里bean的作用域 <bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"\/> 默认是单例模式,即scope="singleton"另外scope还有...

spring和hiberbate整合的项目里面,spring配置文件里面怎么配置两个连...
你可以配置多个数据源,配置的方法和配置一个没有什么区别,只是你配的数据源的bean名称或者是ID不一样;但是多个数据源,你就需要配置JTA事务管理!由于时间有限,不能给出demo!

SpringBean的配置详解
接下来,是Bean的别名配置。可以为当前Bean指定多个别名,通过别名同样可以获取到Bean对象。此时,多个名称均能获取到UserDaoImpl实例对象。Bean的范围配置是关键。默认情况下,Spring环境中的Bean作用范围分为两种:Singleton和Prototype。当Scope设置为singleton时,获取两次对象的打印结果一致,观察断点调试,可以...

相同的JavaBean只会实例化一次?对吗?
信息不足,不知道是在什么环境下。说下我的看法。JavaBean只是一个类,只不过符合某种规范。语言层面:如果是静态类(static修饰),只会存在一个实例。自己控制:普通类的实例对象可以存在多个,可以自己施加控制使只其实例化一次(单例模式)

相似回答