当我有一个想法,使用Spring Data Redis的时候,我想到了JPA, 想到了Spring Data Mongo,一想Spring Data统一了Dao层的编程模型,我就觉得我可以轻松驾驭Spring Data Redis,果然想法是天真的。当我准备启动项目的时候,就报了一个错误:
***************************
APPLICATION FAILED TO START
***************************
Description:
A component required a bean of type 'com.example.demo.repository.VocabularyEntityRepository' that could not be found.
这时时间已经过去了许久。我想这时候就开始看官网了,首先是找到Spring Data Redis 的文档看了一番,然而并没有看到什么问题,一想到Spring Data Redis肯定是开箱即用的,也就是我不需要额外的配置,除非我使用的不是默认的配置,显然我是完全按照默认的配置来的,所以我排除了配置的原因。
@RedisHash("people")
public class Person {
@Id String id;
@Indexed String firstname;
String lastname;
Address hometown;
}
public class Address {
@GeoIndexed Point location;
}
再看@GeoIndexed注解就很亲切。
Find using Geo Index:
repository.findByHometownLocationNear(new Point(15, 37), new Distance(200, KILOMETERS)); List findByAddressLocationWithin(Circle circle)