繁体   English   中英

需要一个无法通过Spring Boot找到的类型的bean

[英]Required a bean of type that could not be found Spring Boot

Spring Boot应用程序无法启动?

这是我的项目结构

下面是我的主班。

package com.example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

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

我的控制台是

2017-11-28 11:48:52.187  WARN 7316 --- [           main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userController': Unsatisfied dependency expressed through field 'userRepository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.example.repository.UserRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
Description:

Field userRepository in com.example.controller.UserController required a bean of type 'com.example.repository.UserRepository' that could not be found.


Action:

Consider defining a bean of type 'com.example.repository.UserRepository' in your configuration.

Application.properties

spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.database=example

UserRepository界面

package com.example.repository;

import org.springframework.data.mongodb.repository.MongoRepository;

import com.example.model.User;

public interface UserRepository extends MongoRepository<User, String>{
    public User findOneByName(String name);
}

这是我的控制器

@RestController
@RequestMapping("/user/")
public class UserController {
    @Autowired
    public UserRepository userRepository;
    @RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
    public void create(@RequestBody User user){
        userRepository.save(user);
    }
}

尝试在Start类中添加@EnableMongoRepositories(basePackages="com.example.repository")

我尝试使用CrudRepository接口代替MongoRepository。 它的工作正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM