如何找到 MongoRepository 的 Bean 实例?

How to find a Bean instance of MongoRepository?

我正在尝试使用 MongoRepository,但 Spring 抱怨说上下文中没有 MonoRepository-Interface 的实例。

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

@Document(collection = "tableItems")
class TableItem {

    @Id
    public String id;
    public int roundNbr;
}

interface TableItemsRepository extends MongoRepository<TableItem, String> {
}

@Service
class TableItemsService {

    @Autowired
    public TableItemsService(TableItemsRepository tableItemsRepository) {
    }
}

服务器投诉:

Parameter 0 of constructor in backend.TableItemsService required a bean of type 'backend.TableItemsRepository' that could not be found.


Action:

Consider defining a bean of type 'backend.TableItemsRepository' in your configuration.

我的专家pom.xml:

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-mongodb</artifactId>
    <version>3.4.0</version>
</dependency>

如何获取我的 MongoRepository 的 bean 实例?

依赖关系不正确。

spring-data-mongodb 只编译:

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-mongodb</artifactId>
    <version>3.4.0</version>
</dependency>

但是您需要额外的依赖项才能使其成为 运行。为方便起见,您可以导入 spring-boot-starter-data-mongodb,这会将所有必需的工件作为传递依赖项导入:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>