我使用弹性搜索来存储数据(弹簧数据elasticsearch)和我,需要在我的文档中存储地理位置。类结构采用以下格式。弹簧数据弹性搜索GeoPoint与弹簧mvc
@Document(indexName = "outlet")
public class OutletIndex implements IESMapper {
@Id
private String path;
private String name;
@GeoPointField
private GeoPoint geoPoint;
// setters and getters
}
由于是GeoPoint
类没有制定者不与春MVC控制器@ModelAttribute
注释工作。我需要从正面获得它,所以我想它更新为:
@Document(indexName = "outlet")
public class OutletIndex implements IESMapper {
@Id
private String path;
private String name;
@GeoPointField
private GeoPoint geoPoint;
private String geoLocation;
public void setGeoLocation(String geoLocation) {
this.geoLocation = geoLocation;
if (geoLocation != null && geoLocation.trim() != "") {
String[] loc = geoLocation.split(",");
this.geoPoint = new GeoPoint(Double.parseDouble(loc[0]), Double.parseDouble(loc[1]));
}
}
// setters and getters
}
持有它的字符串表示,并且还更新GeoPiont
的二传手内的附加字段。
有没有更好的方法来做到这一点?
编辑:还有一个疑问,有没有什么办法使用字符串作为geopoint(逗号分隔值)?