我尝试使用Spring Data REST和MongoDB实现基于位置的搜索。首先,我创建了一个模型。
public class Event {
@Id
private String id;
private String name;
private String description;
private double[] position;
.. getter setter ..
}
其次我添加了一个存储库。
public interface EventRepository extends MongoRepository<Event, String> {
List<Event> findByName(@Param("name") String name);
List<Event> findByPositionWithin(@Param("circle") Circle c);
List<Event> findByPositionNear(@Param("point") Point p, @Param("distance") Distance d);
}
但是现在我遇到了一个问题,我不知道如何为 findByPositionWithin 和 findByPositionNear 调用 / search 端点?我无法找到任何参考或文档如何将复杂类型传递给方法。
findByName端点 events / search / findByName?name = test 效果很好。如何传递圆参数?我是否需要编写自定义消息转换?
希望有人有任何建议:)