Spring-data-rest和Spring-jpa

时间:2012-08-07 18:08:35

标签: spring rest spring-data-rest

data-rest和jpa。

我使用@EmbeddedId

创建了一个带有复合键的实体

和repository使用findById查询参数

扩展CrudRepository

当我输入网址

[链接](http://localhost:8080/data/person/search/findById?findById=1,2&name=abc

我收到错误,无法将字符串转换为Long。

有没有办法使用spring JPA将字符串转换为Longs列表?

请帮帮我。

1 个答案:

答案 0 :(得分:4)

实际上,我今天正在研究这项功能。

在最新的快照构建中,有一个新注释:@ConvertWith。您将Spring Core Converter实现的类名放在该注释中,导出器将使用该转换器将String[]查询参数值转换为查询方法的参数。

有一个example of how to use it in your Repository in the tests(我会很快更新维基,但还没有机会,因为这些新快照上的墨水甚至还没有干掉:)。要在URL查询字符串中传递多个值,请多次引用相同的名称:

http://localhost:8080/people/search/findById?id=1&id=2&id=3

当然,您可以选择将多个值编码为单个参数值(例如以逗号分隔),并在您自己的转换器中进行转换。不过,无论如何,您仍会将String[]传递给您的自定义转换器。