我目前正在以地图的形式处理应用程序,该地图显示某个国家/地区的服务的覆盖级别。 Level3 =覆盖率很高,Level2 =覆盖率良好,Level1 =覆盖率低。 我以geojson文件的形式获取描述多边形和多边形坐标的数据,我目前使用ogr2ogr.java工具在Postgres中导入它们。 当前端应用程序为后端API(弹簧控制器)上的基本点提供纬度和经度参数请求时,我想查询数据库以获得与前端发送的坐标参数确定的区域相对应的覆盖水平,并以最有效的方式返回格式为geojson或topojson的结果。
目前,对于我的数据,geojson每个请求甚至需要4 MB和6/7秒,所以我认为topojson将是更好的解决方案。
我找到了3种从postgis dabatase查询返回topojson的方法:
将数据库中的几何转换为topogeometries,然后转换为
topojson只使用postgis函数和java。但这需要很多
时间。
使用postgis函数和java将查询结果转换为geojson,然后使用node.js库将geojson转换为topojson但是这个
由于java代码必须调用
,因此解决方案看起来并不优雅和简单
javascript / node.js代码并获得结果
所以目前我专注于使用shapefile和使用topojson的最后一个解决方案但是我还没有找到一个解决方案来将形状文件直接存储在postgres数据库或内存中,只是在磁盘上。
如果您对这个或其他有效的解决方案有所了解,请告诉我。
由于