本站资源收集于互联网,不提供软件存储服务,每天免费更新优质的软件以及学习资源!

SpringBoot项目中ServiceImpl重复读取Bean对象的原因是什么?

网络教程 app 1℃

SpringBoot项目中ServiceImpl重复读取Bean对象的原因是什么

spring-boot项目serviceimpl中重复读取bean对象

在springboot项目中,当注入service层时,发现多次读取bean对象,并报错。这是怎么回事呢?

查看代码,发现使用了@resource注解注入mapper和service,代码如下:

@servicepublic class userserviceimpl implements userservice { @resource private usermapper usermapper; @resource private roleservice roleservice;}

@resource注解是一种依赖注入方式,它默认通过名称进行注入。当同类型的bean有多个时,会报重复注入的错误。

为了解决这个问题,需要指定bean的名称,或者使用@autowired注解注入,例如:

@servicepublic class userserviceimpl implements userservice { @autowired private usermapper usermapper; @autowired private roleservice roleservice;}

@autowired注解默认按类型注入,当bean类型唯一时,无需指定bean名称。

对于多重依赖注入的情况,可以使用@qualifier(“beanname”)注解指定bean名称,例如:

@Servicepublic class UserServiceImpl implements UserService { @Autowired @Qualifier("userMapper1") private UserMapper userMapper; @Autowired @Qualifier("roleService2") private RoleService roleService;}

通过以上方法,可以解决spring-boot项目中serviceimpl中重复读取bean对象的问题。

以上就是Spring Boot 项目中 ServiceImpl 重复读取 Bean 对象的原因是什么?的详细内容,更多请关注范的资源库其它相关文章!

转载请注明:范的资源库 » SpringBoot项目中ServiceImpl重复读取Bean对象的原因是什么?

喜欢 (0)