我需要按位置实施位置搜索和搜索(最好的例子是 booking.com ,或 airbnb )
简而言之:
我认为,这是一个相当标准的问题,但令我遗憾的是,我不知道如何实现这一点(我的应用程序基于Java,Spring,MySQL,Angular)。
首先,我考虑使用Google Places API执行1.任务:在用户界面上输入城市名称,接收匹配城市列表,获取每个项目的名称,经度和经度,然后保存。但我不知道如何通过聚合位置(例如按国家/地区)解决搜索项目。使用坐标解决了多语言支持。但是国家坐标是否按Places API返回正确(我认为没有)? MySQL空间索引是否足够呢?
或者我应该为每个城市组成等级名称,例如巴黎 - 法兰西岛 - 法国并按LIKE搜索?但是在这种情况下如何有效地支持多种语言?
或者可能是我应该构成ids的分层链 paris_id + Ile de france id + france id ?
可能不是使用Google API我需要保留自己的位置数据库(例如基于GeoNames)?
欢迎任何有效解决问题的建议!