Java Error creating bean with name:Bean with name has been injected into other beans in its raw问题解决

2021/9/27 20:43:07

本文主要是介绍Java Error creating bean with name:Bean with name has been injected into other beans in its raw问题解决,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

问题描述:

Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'userServiceImpl': Bean with name 'userServiceImpl' has been injected into other beans [userLogServiceImpl] in its raw version as part of a circular reference, but has eventually been wrapped. This means that said other beans do not use the final version of the bean. This is often the result of over-eager type matching - consider using 'getBeanNamesOfType' with the 'allowEagerInit' flag turned off, for example.

问题分析:

1、两个Service相互装配对方的实例,出现循环引用的情况,导致报错。

package com.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserService {
    @Autowired
    private UserLogService userLogService;
}
package com.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserLogService {
    @Autowired
    private UserService userService;
}

解决办法:

去掉其中一个Service的@Autowired注解和service变量,解除相互嵌套引用即可。



这篇关于Java Error creating bean with name:Bean with name has been injected into other beans in its raw问题解决的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程