首页 > 解决方案 > Spring Rest 存储库集合名称区分大小写

问题描述

我正在使用 Spring Boot 和 MongoDB,并尝试使用 Spring Rest 存储库通过 REST 公开它们。

我有一个名为 Mongo 的集合user和一个名为User. 我的 Rest 存储库如下所示:

@RepositoryRestResource(  collectionResourceRel = "users", path = "users")
public interface UserRepository extends MongoRepository<User, String> {

    public User findByEmail(@Param("email") String email);

}

有了这个,我得到了资源通过 REST 自动公开的广告好处。获取、放置、发布所有爵士乐。

我发现,当我将 Mongo 集合重命名为 时,它在端点User上找不到记录。/users几乎就像 Spring REST Repositories 假设集合名称将是小写的(是的,我确实在这里遇到了文档 - https://docs.spring.io/spring-data/rest/docs/current-SNAPSHOT/参考/html/ )

Spring Data REST 公开了一个集合资源,该集合资源以导出​​的存储库正在处理的域类的非大写复数版本命名。可以使用存储库接口上的 @RepositoryRestResource 自定义资源的名称和路径。

我所追求的是一种对其进行配置的方法,以便我可以使用集合名称User而不是user.

我进行了相当多的搜索,但无法找到答案。

非常感谢任何帮助!干杯!

标签: mongodbspring-bootspring-data-rest

解决方案


推荐阅读