使用GeoTools 2.3M连接到POSTGIS数据库

2
3 /** */ /**
4 *
5 * CopyRight (C) All rights reserved.
6 * <p> * WuHan Inpoint Information Technology Development,Inc.
7 * <p> * Author sinoly <p> Project Name: PostGeo
8 * <p>
9 * Base on : JDK1.5
10 * <p>
11 *
12 */
13 import java.io.IOException;
14 import java.util.HashMap;
15 import java.util.Map;
16
17 import org.geotools.data.DataStore;
18 import org.geotools.data.DataStoreFinder;
19 import org.geotools.data.FeatureSource;
20
21 public class GetPostgisData {
22
23 static DataStore pgDatastore; // 数据容器
24
25 @SuppressWarnings( " unchecked " )
26 private static void ConnPostGis(String dbtype,String URL, int port,String database,String user,String password) {
27 Map params = new HashMap();
28 params.put( " dbtype " , " postgis " );
29 params.put( " host " , URL);
30 params.put( " port " , new Integer(port));
31 params.put( " database " , database);
32 params.put( " user " , user);
33 params.put( " passwd " , password);
34 try {
35 pgDatastore = DataStoreFinder.getDataStore(params);
36 if (pgDatastore != null ) {
37 System.out.println( " 系统连接到位于: " + URL + " 的空间数据库 " + database + " 成功! " );
38
39 } else {
40 System.out.println( " 系统连接到位于: " + URL + " 的空间数据库 " + database + " 失败!请检查相关参数 " );
41 }
42 } catch (IOException e) {
43 e.printStackTrace();
44 System.out.println( " 系统连接到位于: " + URL + " 的空间数据库 " + database + " 失败!请检查相关参数 " );
45 }
46 }
47
48 public static void main(String[] args) throws IOException {
49 ConnPostGis( "" , " localhost " , 5432 , " navigation " , " root " , " 123 " );
50 /**/ /* 读取指定类型名的地理特征 */
51 FeatureSource fsBC = pgDatastore.getFeatureSource( " roads " );
52 System.out.println(fsBC.getFeatures().size());
53 /**/ /* 得到空间数据库中所有特征表的表名 */
54 String[] typeName = pgDatastore.getTypeNames();
55 for ( int i = 0 ;i < typeName.length;i ++ ) {
56 System.out.println(typeName[i]);
57 }
58 }
59 }
60
61
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值