浅析iServer地址匹配服务

2024-02-25 10:32

本文主要是介绍浅析iServer地址匹配服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者 小舜

iServer迎来9D版本重大更新,其中一个新功能就是地址匹配服务就是我们熟悉的正反地理编码功能,今天我们就来简单了解下这个新功能。
  
###发布地址匹配服务

想要使用地理编码的功能首先我们需要发布一个地址匹配服务,我们以iServer产品包中的示范数据(iServer所在目录/sample/data/AddressMatch/BeijingAddress.smwu)为例,登入iServer服务管理页面,选择快速发布服务,发布工作空间,勾选发布地址匹配服务进入详细配置页面。如下图所示:
这里写图片描述
其中*号参数为必填
数据字典:地址字典文件路径,后缀为“.dct”。地址字典文件中规定了中文分词规则,分词是把中文的汉字序列切分成有意义的词,例如:我是一个学生,分词后的结果:我/是/一个/学生。地址字典就是这些有意义的词的集合。SuperMap iServer 内置地址字典,您也可以通过 SuperMap iobject Java 为您的数据定制地址字典。iServer的默认字典路径为iServer所在目录/webapps/WEB-INF/config/addressMatchDictionary.dct
数据源,数据集:分别设置要做编码的数据源和数据集。
查询字段:设置编码可用来参与地址匹配的字段,最终返回的地点名称与设置的字段顺序相反,可设置多个。
查询半径:用于设置查询范围,设置后用户将获得指定半径内的结果。使用反向地址匹配时有效。单位为米。
索引目录:用来生成索引的目录。默认就行
过滤字段:设置过滤字段,使用地址匹配设置过滤参数(如果需要)将是该字段中的某一个或多个值
EPSG Code:指定索引投影
线程池大小:线程缓冲池大小。默认就行

发布成功后,你还可以在服务管理页面进行配置修改,特别注意的是更新索引功能耗时较长,建议更新索引时段选在深夜。
###使用正向地址匹配API
iServer提供rest api接口,例如ip:iserver/services/addressmatch-BeijingAddress/restjsr/v1/address/geocoding 可以直接通过http请求完成,iclient 9D for javascript也封装有对应的接口,我们以javascript接口为例实现地址匹配相关功能

var addressUrl='ip:iserver/services/addressmatch-BeijingAddress/restjsr/v1/address'
var addressMatchService = L.supermap.addressMatchService(addressUrl);

代码中使用iclient 9D for javascript leaflet版初始化了一个地址匹配服务,下面我们着重介绍下参数

var geoCodeParam=new  SuperMap.GeoCodingParameter(options)
addressMatchService.code(geoCodeParam, callback);

其中options参数是个对象,包含以下属性
address string类型 地点关键词。
filters Array类型 过滤字段,限定查询区域。
fromIndex number类型 设置返回对象的起始索引值。
maxReturn string类型 最大返回结果数。
prjCoordSys string类型 查询结果的坐标系。
toIndex number类型 设置返回对象的结束索引值。
成功后回调函数返回的结果如下
这里写图片描述
*其中score代表匹配度。

###使用反向地址匹配API
同样的我们给定一个坐标位置就可以反向匹配出该位置的位置信息

var geoDecodeParam=new  SuperMap.GeoDecodingParameter(options)
addressMatchService.decode(geoDecodeParam, callback);

options参数如下
filters Array 过滤字段,限定查询字段值。
fromIndex number 设置返回对象的起始索引值。
geoDecodingRadius number 查询半径。
maxReturn number 最大返回结果数
prjCoordSys string 查询结果的坐标系。
toIndex number 设置返回对象的结束索引值。
x number 查询位置的横坐标。
y number 查询位置的纵坐标。
是不是非常简单 赶紧动手试下吧!

这篇关于浅析iServer地址匹配服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/745204

相关文章

浅析Python中的绝对导入与相对导入

《浅析Python中的绝对导入与相对导入》这篇文章主要为大家详细介绍了Python中的绝对导入与相对导入的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1 Imports快速介绍2 import语句的语法2.1 基本使用2.2 导入声明的样式3 绝对import和相对i

golang字符串匹配算法解读

《golang字符串匹配算法解读》文章介绍了字符串匹配算法的原理,特别是Knuth-Morris-Pratt(KMP)算法,该算法通过构建模式串的前缀表来减少匹配时的不必要的字符比较,从而提高效率,在... 目录简介KMP实现代码总结简介字符串匹配算法主要用于在一个较长的文本串中查找一个较短的字符串(称为

springboot的调度服务与异步服务使用详解

《springboot的调度服务与异步服务使用详解》本文主要介绍了Java的ScheduledExecutorService接口和SpringBoot中如何使用调度线程池,包括核心参数、创建方式、自定... 目录1.调度服务1.1.JDK之ScheduledExecutorService1.2.spring

C++使用栈实现括号匹配的代码详解

《C++使用栈实现括号匹配的代码详解》在编程中,括号匹配是一个常见问题,尤其是在处理数学表达式、编译器解析等任务时,栈是一种非常适合处理此类问题的数据结构,能够精确地管理括号的匹配问题,本文将通过C+... 目录引言问题描述代码讲解代码解析栈的状态表示测试总结引言在编程中,括号匹配是一个常见问题,尤其是在

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

TP-Link PDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务

《TP-LinkPDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务》近期,路由器制造巨头普联(TP-Link)在用户群体中引发了一系列重要变动,上个月,公司发出了一则通知,明确要求所... 路由器厂商普联(TP-Link)上个月发布公告要求所有用户必须完成实名认证后才能继续使用普联提供的 D

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ