首页 > 其他分享 >Spring中如果两个bean的id相同,会报错吗

Spring中如果两个bean的id相同,会报错吗

时间:2023-08-02 12:23:43浏览次数:34  
标签:相同 Spring Bean public bean 报错 id

首先

在同一个xml文件中,bean的id是唯一的不允许出现id相同的bean,否则spring启动的时候就会报错。

但是

在两个不同的配置文件里面,允许有相同id的bean。就会出现覆盖bean的情况。

还有

如果使用@Bean注解去声明一个bean,那么bean属性name相同的话,也就是声明了多个相同名字的bean,spring只会注册第一个声明的bean实例。之后的bean不会注册。
例子:

public class SpringBeanTest{
	@Bean("name=userService")
	public UserService1 userservice1(){
		return new UserService1;
	}
	@Bean("name=userService")
	public UserService2 userservice2(){
		return new UserService2;
	}
}

使用@Autowired,根据类型依赖注入

@Autowired
private UserService1 userService1;

@Autowired
private UserService2 userService2;//报错

标签:相同,Spring,Bean,public,bean,报错,id
From: https://www.cnblogs.com/yliunyue/p/17600350.html

相关文章

  • 安装python误操作影响yum报错处理
    一,如图:yum时报:liblber-2.4.so.2:cannotopensharedobjectfile:Nosuchfileordirectory二,是因为缺少一个包:openldap-xxxx.el7_6.x86_64.rpm(注意不同版本的linux系统有不同XX版的包)三,在官网找到对应版本的openldap包:http://ftp.pbone.net/mirror/ftp.scientificlinux......
  • Nginx报错Can't open PID file /var/run/nginx.pid (yet?) after start: No such file
    1.关于报错启动nginx服务发现Systemd中存在报错:Can'topenPIDfile/var/run/nginx.pid(yet?)afterstart:Nosuchfileordirectory2.解决办法2.1查看版本和配置选项信息nginx-V参数看到报错中提到的信息2.2定位问题文件增加启动参数配置发现该文件存......
  • 浅谈-BeanWrapper bw = PropertyAccessorFactory.forBeanPropertyAccess(Object targe
    BeanWrapper是SpringFramework中的一个接口,它提供了一种方便的方式来访问Java对象的属性,并允许对属性进行读取和设置操作。PropertyAccessorFactory.forBeanPropertyAccess(this)是一个工厂方法,用于创建一个BeanWrapper对象,以便访问指定的Java对象的属性。举个例子来......
  • SpringBoot-2、SpringBoot打包时排除指定文件
    maven-jar-plugin,它可以配置JAR打包的细节,包括哪些文件会被包含在JAR中。以下是一个示例的配置,可以在pom.xml中添加:<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin<......
  • ubuntu系统升级软件sudo apt upgrade后GPU崩溃报错,显示驱动版本不匹配——ubuntu系统
     ubuntu系统升级软件(sudoaptupgrade)后,GPU崩溃报错,查看系统日志: Aug206:25:02lcwtrsyslogd:[originsoftware="rsyslogd"swVersion="8.32.0"x-pid="2059"x-info="http://www.rsyslog.com"]rsyslogdwasHUPedAug207:17:01lcwtC......
  • spring的事务注解详解
    Spring是一个流行的开发框架,它提供了很多功能和特性,其中包括事务管理。事务管理是在应用程序中执行一系列操作时,确保数据的一致性和完整性的关键方面之一。Spring框架提供了多种方式来管理事务,其中最常用的方式是使用注解。通过在方法或类级别上添加特定的注解,可以将相关的方法或类......
  • springboot和springcloud区别
    springboot和springcloud区别有:1、含义不同;2、作用不同;3、使用方式不同;4、特征不同;5、注释不同;6、优势不同;7、组件不同;8、设计目的不同。其中,含义不同指的是springboot是一个快速开发框架,而SpringCloud是建立在SpringBoot上的服务框架。1、含义不同springboot:一个快速开发框架......
  • 6小时快速入门Java微服务架构Spring Boot
    springboot快速入门配置文件例如修改tomcat启动端口号:application.properties:server.port=8080<!--注意yml文件数据值前面必须有空格-->application.yml:server:port:8080配置文件优先级:.properties>.yml>.yamlYAML:基本语法大小写敏感数据......
  • git 报错
    git提交遇到的问题已建好的仓库,提交代码1.直接克隆远端仓库gitclonessh远端地址本地创建与远端仓库名一样的mkdir仓库名gitinit初始化#提交到暂存区并提交至远端gitadd.gitcommit-m'注释'gitconfig--globaluser......
  • Spring框架你了解多少?
    Spring框架是当前Java领域应用最广的框架,它之所以那么成功,这主要是得益于它的设计理念。它的理念包括IoC(InversionofControl,控制反转)和AOP(AspectOrientedProgramming,面向切面编程)。下面我们就来一起学习下Spring这个优秀的开源框架。什么是Spring?Spring是分层......