如何將地圖存儲在Solr中的POJO中?目前,我有這樣如何將地圖存儲在Solr的POJO中?
@Field("*_locId")
protected Map<String, Integer> geoLocationToLocationId;
在Schema.xml文件的構建:
<dynamicField name="*_locId" type="int" indexed="false" stored="true" multiValued="false" />
通過添加:
public void addGeoLocationToLocationAutoInMapping(GeoCoordinates geoCoordinates,
Integer id) {
if(this.geoLocationToLocationId == null) {
this.geoLocationToLocationId = new HashMap<String, Integer>();
}
this.geoLocationToLocationId.put(geoCoordinates.toString() +
"_locId", id);
}
得到的是類似的。
這樣的工作,但它有點骯髒,我在Solr這樣存儲一個Java Map,因爲我可以得到大量的字段。有沒有另一種方法將Java地圖寫入Solr?
我不想索引它們,我只是想保存數據。
你爲什麼要這麼做?根據您的使用情況,也許最好將地圖存儲在另一個數據存儲區(mongo,couchbase,redis等)中,並在您檢索Solr的結果後快速查找。只有保持數據在你真正用於查詢的SORL中,並通過這個2站過程檢索剩下的數據是一種常見的(我敢說我是最佳實踐)模式。 – 2013-03-26 13:24:16