命令相关(完成版请参考:命令大全

  1. //1.将指定的地理空间位置(纬度、经度、名称)添加到指定的key中
  2. GEOADD key [NX|XX] [CH] longitude latitude member [longitude latitude member ...]
  3. //2.返回两个给定位置之间的距离。如果两个位置之间的其中一个不存在, 那么命令返回空值
  4. 指定单位的参数 unit 必须是以下单位的其中一个:
  5. m 表示单位为米。
  6. km 表示单位为千米。
  7. mi 表示单位为英里。
  8. ft 表示单位为英尺。
  9. GEODIST key member1 member2 m|km|ft|mi
  10. //3.返回一个或多个位置元素的 Geohash 表示
  11. GEOHASH key member [member ...]
  12. //4.从key里返回所有给定位置元素的位置(经度和纬度)
  13. GEOPOS key member [member ...]
  14. //5.以给定的经纬度为中心,返回键包含的位置元素当中,与中心的距离不超过给定最大距离的所有位置元素
  15. GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count]

JAVA相关

  1. //1.将指定的地理空间位置(纬度、经度、名称)添加到指定的key中
  2. Long add = defaultRedis.opsForGeo().add("key", new Point(1, 10), "SHANGHAI");
  3. //2.返回两个给定位置之间的距离。如果两个位置之间的其中一个不存在, 那么命令返回空值
  4. Distance distance = defaultRedis.opsForGeo().distance("key", "SHANGHAI", "TIANJIN");
  5. //3.返回一个或多个位置元素的 Geohash 表示
  6. List<String> hash = defaultRedis.opsForGeo().hash("key", "SHANGHAI", "TIANJIN");
  7. //4.从key里返回所有给定位置元素的位置(经度和纬度)
  8. List<Point> position = defaultRedis.opsForGeo().position("key", "SHANGHAI", "TIANJIN");
  9. //5.以给定的经纬度为中心,返回键包含的位置元素当中,与中心的距离不超过给定最大距离的所有位置元素
  10. Circle circle = new Circle(1, 2, 3);
  11. GeoResults<RedisGeoCommands.GeoLocation<Object>> key1 = defaultRedis.opsForGeo().radius("key", circle);