连接PostGIS

参考:PostGIS Plugin — GeoTools 32-SNAPSHOT User Guide

1、引入pom依赖

<dependency>
   <groupId>org.geotools.jdbc</groupId>
   <artifactId>gt-jdbc-postgis</artifactId>
   <version>${geotools.version}</version>
 </dependency>

2、使用 DataStore 查找器进行连接

连接参数解释如下:

private static void conn(String dbtype, String host, String port,
                             String database, String userName, String password) {
        Map<String, Object> params = new HashMap<String, Object>();
        params.put(PostgisNGDataStoreFactory.DBTYPE.key, dbtype);
        params.put(PostgisNGDataStoreFactory.HOST.key, host);
        params.put(PostgisNGDataStoreFactory.PORT.key, new Integer(port));
        params.put(PostgisNGDataStoreFactory.DATABASE.key, database);
        params.put(PostgisNGDataStoreFactory.SCHEMA.key, "public");
        params.put(PostgisNGDataStoreFactory.USER.key, userName);
        params.put(PostgisNGDataStoreFactory.PASSWD.key, password);
        try {
            pgDatastore = DataStoreFinder.getDataStore(params);
            if (pgDatastore != null) {
                System.out.println("系统连接到位于:" + host + "的空间数据库" + database
                        + "成功!");
            } else {
                System.out.println("系统连接到位于:" + host + "的空间数据库" + database
                        + "失败!请检查相关参数");
            }
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("系统连接到位于:" + host + "的空间数据库" + database
                    + "失败!请检查相关参数");
        }

    }

拓展(其他一些参数说明):

使用实例如下:

params.put(PostgisNGDataStoreFactory.LOOSEBBOX, true );
params.put(PostgisNGDataStoreFactory.PREPARED_STATEMENTS, true );

其他数据库连接参考:

        mysql:MySQL Plugin — GeoTools 32-SNAPSHOT User Guide

        oracle:Oracle Plugin — GeoTools 32-SNAPSHOT User Guide

        SQL Server:SQL Server Plugin — GeoTools 32-SNAPSHOT User Guide

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值