如何使用Solrj注释索引Lat / Long
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Solrj注释索引Lat / Long相关的知识,希望对你有一定的参考价值。
我有一个对象,我想添加到我使用solrj的@Field注释注释的Solr服务器,但是我找不到任何有关用于Solr的位置类型的Java数据类型的文档。这是我要添加的Bean:
@Field
private UUID id;
@Field
LatLonType location; // what should the Java data type of this field be???
@Field
private EventType eventType;
@Field
private int maxCapacity;
@Field
private int minCapacity;
@Field
private double price;
@Field
private Date startDate;
@Field
private Date endDate;
有任何想法吗?
答案
Java端的适当类型是一个简单的String
,其中lat和lon由逗号分隔,例如"1.2,3.4"
。
另一答案
解决该问题的最佳方法是,如果要使用addBean()方法,则需要在对象上创建属性并对其进行注释,如下所示:
public class MyBean {
private double latitude;
private double longitude;
public String getLocation() {
return latitude + "," + longitude;
}
@Field
public void setLocation( String value ) {
String[] split = value.split(",");
latitude = Double.parseDouble(split[0]);
longitude = Double.parseDouble(split[1]);
}
}
以上是关于如何使用Solrj注释索引Lat / Long的主要内容,如果未能解决你的问题,请参考以下文章
laravel 如何通过 long 和 lat 找到附近的地方
从 1600 万+ lat/long 获取 FIPS 块代码
如何在 R 中毫无问题地将 Lat-Long 转换为 FIPS 县代码?