尝试使用带有流

时间:2016-02-10 16:14:36

标签: java spring spring-boot spring-data-mongodb

我扩展了MongoRepository并希望使用Stream API。作为引用,我声明了一个查询方法:

public Stream<MyType> findByIdIn(Iterable<? extends String> myTypeIds);

但是,在启动Spring Boot应用程序时,会引发PropertyNotFoundException声明:

  

找不到类型Stream的属性ID!

我的域类型派生自包含MongoDB对象的实际ID的超类型。任何想法如何解决这个问题?

我正在使用Spring Boot 1.2.0.RELEASE和Spring Data MongoDB 1.6.1.RELEASE。

1 个答案:

答案 0 :(得分:2)

在Spring Data MongoDB 1.7版as per the release notes中添加了对Stream作为返回类型的支持:

  

Spring Data MongoDB 1.7中的新功能

     

...

     
      
  • 允许Stream作为查询方法返回类型
  •   

因此,您需要从1.6.1.RELEASE更新到至少1.7版。如果您使用的是Maven,则可以为当前的最新版本添加以下依赖项,即1.8.2.RELEASE:

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