【发布时间】:2015-10-15 00:58:26
【问题描述】:
我是 Spring Boot 的新手。我试图创建也插入 MongoDB 的 RESTful Web 服务。 除此以外,一切正常,如指南所述。
package hello.requests;
import java.util.List;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.data.rest.core.annotation.RepositoryRestResource;
import hello.models.CustomerModel;
@RepositoryRestResource(collectionResourceRel = "people", path = "people")
public interface CustomerRepository extends MongoRepository<CustomerModel, String> {
List<CustomerModel> findByLastName(@Param("name") String name);
}
在这里,我尝试将存储库的 RESTful 端点从默认的 /customerModels 更改为 /people。但是当我运行它时,如果我尝试/people,我会得到 404,但对于/customerModels 效果很好。
在更广泛的意义上,@RepositoryRestResource 是如何工作的?
我在这里做错了什么?
【问题讨论】:
-
你能分享你的配置吗?
-
您能详细说明一下吗?这或多或少基于此 Spring 指南。 spring.io/guides/gs/accessing-mongodb-data-rest
-
你检查过你的 mongodb 集合“人”吗?顺便说一句,如果遇到 404 异常,您能否分享有关它的日志。
-
没有 MongoDB 集合“人”。该集合保存为“CustomerModels”。 collectionResourceRel = "people", path = "people" 用于将端点从 /customerModels 别名为 /people。引自指南。 ` @RepositoryRestResource 对于要导出的存储库来说不是必需的。它仅用于更改导出详细信息,例如使用 /people 代替 /persons 的默认值。`
-
好的,你试过这样
collectionResourceRel = "CustomerModels", path = "people"吗?
标签: java spring mongodb rest spring-boot