arcgis server发布shp服务实现数据库与服务同步更新数据(非地理信息数据库方式)

arcgis server发布shp服务实现数据库与服务同步更新数据

1 前言

  1. 本人另一篇博文为创建地理信息数据库的方式发布,参考
  2. 如果发布过程并不顺利,可参考此博文使用非地理信息数据库来发布,也可以直接参考本文章发布,本文章与另一篇博文只有第三节不一样

Arcgis和Arcgis Server都为10.2版本
数据库为Oracle11g,同时安装Arcgis的电脑已经安装了Oracle客户端

2 shp文件条件准备

右击shp文件名 > 打开属性表:准备好需要颜色分级的字段(这里不讲解关于字段的操作)
在这里插入图片描述

双击文件名打开属性框 > 符号系统 > 数量 > 分级符号 ,将分级显示的颜色分配好
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3 设置shp数据源

目录 > 数据库连接 > 添加数据库连接
在这里插入图片描述
填入数据库连接信息
在这里插入图片描述
新建的数据库连接(右击) > 导入 > 要素类(单个)
在这里插入图片描述
输入信息,尽量不要点击字段映射中的字段(保险起见),此步骤之后数据库中会多一张你在输出要素类中输入的名称的表,之后的数据源需要关联此表
在这里插入图片描述
shp数据(右击) > 属性
在这里插入图片描述
源 > 设置数据源
在这里插入图片描述
数据库连接 > 新建的数据库连接
在这里插入图片描述
选择对应的表,确定,设置好数据源
在这里插入图片描述
目录 > GIS服务器 > 添加Arcgis Server
在这里插入图片描述
在这里插入图片描述

新创建的arcgis server连接右击 > 服务器属性

在这里插入图片描述
数据存储 > 注册数据库
在这里插入图片描述
设置名称 > 添加
在这里插入图片描述
输入数据库连接信息
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4 发布服务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
要使用 Python 发布 ArcGIS Server 服务,您可以使用 ArcPy 模块中的 PublishServiceDefinition 工具。以下是一个简单的代码示例: ```python import arcpy # 定义服务定义文件路径 sddraft = r"C:\path\to\service.sddraft" sd = r"C:\path\to\service.sd" # 定义服务名称、类型和端口号 serviceName = "MyService" serviceType = "MapServer" port = "6080" # 创建服务定义草稿 arcpy.mapping.CreateMapSDDraft("C:/data/World.mxd", sddraft, serviceName, serviceType, "ARCGIS_SERVER", "http://localhost:"+port, True, None, "MyFolder") # 读取服务定义草稿 doc = DOM.parse(sddraft) # 修改服务属性 tagsType = doc.getElementsByTagName('Type') for tagType in tagsType: if tagType.parentNode.tagName == 'SVCManifest': if tagType.hasChildNodes(): tagType.firstChild.data = serviceType tagsConfigProps = doc.getElementsByTagName('ConfigurationProperties')[0] tagsProps = tagsConfigProps.getElementsByTagName('PropertyArray')[0] tagsItems = tagsProps.getElementsByTagName('PropertySetProperty') for tagItem in tagsItems: if tagItem.firstChild.data == 'filePath': tagItem.lastChild.firstChild.data = r"C:\data\World.mxd" # 保存修改后的服务定义草稿 f = open(sddraft, 'w') doc.writexml(f) f.close() # 将服务定义文件发布服务 arcpy.StageService_server(sddraft, sd) arcpy.UploadServiceDefinition_server(sd, "My Hosted Services") ``` 此代码将以“ARCGIS_SERVER”类型为例,发布名为“MyService”的MapServer服务,端口号为6080,并将地图文档“World.mxd”作为服务数据源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值