netcdf geotiff java_java发布Geotiff数据

本文介绍如何使用Java编程通过GeoServer发布tif格式的地图服务。首先创建Maven工程,然后引入相关依赖,接着展示PublishGeotiff.java代码,该代码检查工作区和数据存储是否存在,如果不存在则创建,并发布Geotiff文件到GeoServer。
摘要由CSDN通过智能技术生成

环境:IDEA java geoserver。

参考:github项目:geoserver-manager

功能:使用java语言通过Geoserver软件发布tif格式地图服务。

1、新建maven工程

923379751042

image.png

2、pom.xml代码

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

TestGeoserver_success

TestGeoserver_success

1.0-SNAPSHOT

it.geosolutions

geoserver-manager

1.7.0

org.slf4j

slf4j-log4j12

1.5.11

commons-httpclient

commons-httpclient

3.1

commons-io

commons-io

2.0.1

jdom

jdom

1.1

3、PublishGeotiff.java代码

package geoserver;

import it.geosolutions.geoserver.rest.GeoServerRESTPublisher;

import it.geosolutions.geoserver.rest.GeoServerRESTReader;

import it.geosolutions.geoserver.rest.decoder.RESTDataStoreList;

import java.io.File;

import java.util.List;

public class PublishGeotiff {

public static void main(String[] args) throws Exception{

final String geoserverUrl = "http://localhost:8080/geoserver";

final String geoserverUsername = "admin";

final String geoserverPassword = "geoserver";

GeoServerRESTPublisher geoServerRESTPublisher = new GeoServerRESTPublisher(geoserverUrl,geoserverUsername,geoserverPassword);

GeoServerRESTReader geoServerRESTReader = new GeoServerRESTReader(geoserverUrl,geoserverUsername,geoserverPassword);

String workspace = "bbb";

String storeName = "resttestdem";

String coverageName = "resttestdem";

File geotiff = new File("G:\\test\\resttestdem.tif");

//workspace是否存在,不存在则新建。

List workspacesList = geoServerRESTReader.getWorkspaceNames();

boolean wsNull = !workspacesList.contains(workspace);

if(wsNull){

geoServerRESTPublisher.createWorkspace(workspace);

}

//store是否存在,不存在则新建并发布数据。

RESTDataStoreList datastoresList = geoServerRESTReader.getDatastores(workspace);

List datastoreNameList = datastoresList.getNames();

boolean storeNull = !datastoreNameList.contains(storeName);

if(storeNull){

boolean result = geoServerRESTPublisher.publishGeoTIFF(workspace,storeName,coverageName,geotiff);

System.out.println("数据发布是否成功:"+result);

}else{

System.out.println("数据已经发布过了,不能重复发布!");

}

}

}

923379751042

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值