当前位置: 首页 > 知识库问答 >
问题:

SpringBoot-未满足的PendencyException Spring Boot不是扩展Crudepository的自动连接存储库接口

殷永嘉
2023-03-14

Spring Boot应用程序在启动服务器时抛出异常。
异常是:

上下文初始化期间遇到异常-取消刷新尝试:org。springframework。豆。工厂未满足的依赖项异常:创建名为“userController”的bean时出错:未满足的依赖项通过字段“userService”表示;嵌套的异常是org。springframework。豆。工厂未满足的依赖项异常:创建名为“userService”的bean时出错:未满足的依赖项通过字段“userRepository”表示;嵌套的异常是org。springframework。豆。工厂NoSuchBeanDefinitionException:没有类型为“yhcmain”的合格bean。医疗保健。存储库。UserRepository'可用:至少需要1个符合autowire候选资格的bean。依赖项注释:{@org.springframework.beans.factory.annotation.Autowired(required=true)}

应用程序无法启动

描述:

yhcmain中的字段userRepository。医疗保健。服务使用者UserServiceImpl需要类型为“yhcmain”的bean。医疗保健。存储库。找不到的UserRepository“”。

行动:

考虑定义YHCMAN类型的bean。医疗保健。存储库。配置中的UserRepository

控制器:

@RestController
@CrossOrigin("*")
public class UserController {

    @Autowired
    private ServiceResponse response;

    @Autowired
    private UserService userService;

    @RequestMapping(value = "/index", method = RequestMethod.POST, headers = "Accept=application/json")
    public ResponseEntity<ServiceResponse> signUpAttempt(@RequestBody User user) {
        ...
        ...
    }
}

服务:

@Service("userService")
public class UserServiceImpl implements UserService {

    @Autowired
    private UserRepository userRepository;

    public User createUser(User user) {
        return this.userRepository.save(user);
    }
}

存储库:

@Repository("userRepository")
public interface UserRepository extends CrudRepository<User, String> {
}

主要应用:

@SpringBootApplication
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
public class HealthcareApplication implements WebMvcConfigurer {

    public static void main(String[] args) {
        SpringApplication.run(HealthcareApplication.class, args);
    }

    @Override
    public void addCorsMappings(CorsRegistry registry) {
    ...
    ...
    }
}

共有2个答案

能帅
2023-03-14

您需要将以下注释添加到您的配置类(Healthcare Application):

@EnableJpaRepositories("<repository-package>")
金嘉言
2023-03-14

您需要在存储库定义中的CRUDEPository接口中提供实体的主键(长ID或整数ID),并确保@ComponentScan(“RootDirectoryURL”)工作正常。

...

@Repository("userRepository")
public interface UserRepository extends CrudRepository<User, PrimaryKey> {}

...

快乐编码

 类似资料:
  • 我的Spring MVC Web应用程序中有这个控制器, 其中SpitleRepository是一个接口: 其中,SpitleRepository的实现如下: 即使我已经自动装配,我得到: 组织。springframework。豆。工厂UnsatifiedDependencyException:创建名为“SpitleController”的bean时出错,该bean在文件[C:\java\Work

  • 主要内容:org.springframework.context.ApplicationContextInitializer,org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor,org.springframework.beans.factory.config.BeanFactoryPostProcessor,,,,,,,,,,,,1.可扩展的接口启动调用顺序图 ApplicationConte

  • 主要内容:org.springframework.context.ApplicationContextInitializer,org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor,org.springframework.beans.factory.config.BeanFactoryPostProcessor,,,,,,,,,,,,1.可扩展的接口启动调用顺序图 ApplicationConte

  • 我与SpringBoot和JPA合作。我收到一个无法完成的错误。 这是我的主要课程: 这是我的班级失败的原因: 这是类: 这是错误消息: 错误创建bean的名称'请求LoggerImpl':注入自动生成的依赖失败; 无法自动关联字段:专用com。存储库。请求logdao.com。记录器。impl。RequestLoggerImpl。请求logdao;嵌套的异常是org。springframewor

  • 我在Spring Boot上还是新手,我在mongoDB数据库中使用Spring-Boot添加了一个名为文章的文档,我想在该文章中添加注释。但是Spring-boot不能在我的应用程序中自动连接我的存储库。 下面是我的Repository类,它实现了ArticleRepositoryCustom接口,该接口包含一个OuterComment方法。 文章库 这是我的Springboot应用程序课程 当