Java 带路径参数的Spring RepositoryRestResource?
Spring中的注释在定义的路径片段上创建端点,例如Java 带路径参数的Spring RepositoryRestResource?,java,spring,rest,spring-data,Java,Spring,Rest,Spring Data,Spring中的注释在定义的路径片段上创建端点,例如 @RepositoryRestResource(path = "expenses") 将创建以下端点: /expenses /expenses/search /expenses/1 有没有办法在该存储库中包含路径参数?我只想查看与特定用户相关的费用,例如“michael”: 编辑1 我在用户上使用了相同的注释,成功地达到了一半,结果得到了正确的端点: /users/1/expenses 但我无法在该资源上发布任何内容-服务器以空正文回
@RepositoryRestResource(path = "expenses")
将创建以下端点:
/expenses
/expenses/search
/expenses/1
有没有办法在该存储库中包含路径参数?我只想查看与特定用户相关的费用,例如“michael”:
编辑1 我在
用户
上使用了相同的注释,成功地达到了一半,结果得到了正确的端点:
/users/1/expenses
但我无法在该资源上发布任何内容-服务器以空正文回答。我找到了一个解决方案,您必须在常规项目集合上发布(在我的案例中是
费用
),并将对包含实体的引用放入有效负载中:
POST http://localhost:8080/expenses
{
"description": "new car",
"comment": "way too expensive...",
"amount": 3339,
"creationDateTime": "2017-05-26T13:12:11.000+0000",
"user":"http://localhost:8080/users/1"
}
注意有效负载的最后一行。指关联实体
此解决方案有效,但它不是我希望的工作方式。我希望用户发布他们自己的费用,而不是在一般费用表中引用他们自己。我找到了一个解决方案,您必须在一般项目集合中发布(在我的例子中是
费用
),并将对包含实体的引用放入有效负载中:
POST http://localhost:8080/expenses
{
"description": "new car",
"comment": "way too expensive...",
"amount": 3339,
"creationDateTime": "2017-05-26T13:12:11.000+0000",
"user":"http://localhost:8080/users/1"
}
注意有效负载的最后一行。指关联实体
此解决方案有效,但它不是我希望的工作方式。我希望用户发布他们自己的费用,而不是在“一般费用”表中引用他们自己。我认为这是您需要的
希望对你有所帮助。我想这正是你需要的
希望对您有所帮助。Hi@Erwin的可能副本。谢谢你的帮助。您链接的那篇大文章描述了Spring与REST的基本用法。我在
RepositoryRestResource
方面遇到的问题更为具体。事实上,该页面甚至没有提到该注释。还请注意,StackOverflow上不建议使用仅链接的答案,因为外部页面可以随时更改或移动。如果您在外部页面上找到答案,请引用链接之外的相关部分。Hi@Erwin。谢谢你的帮助。您链接的那篇大文章描述了Spring与REST的基本用法。我在RepositoryRestResource
方面遇到的问题更为具体。事实上,该页面甚至没有提到该注释。还请注意,StackOverflow上不建议使用仅链接的答案,因为外部页面可以随时更改或移动。如果您在外部页面上找到答案,请在链接之外引用相关部分。