geotools学习1从postgressql取shp并且展示(java postgis)
来源:互联网 发布:域名代理商不让转出 编辑:程序博客网 时间:2024/06/13 02:21
国内geotools资料太少了,项目要用到,硬着头皮学啊。。。。
package org.geotools.demo;
import java.awt.Color;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import org.apache.log4j.Logger;
import org.geotools.data.DataStoreFinder;
import org.geotools.data.FeatureSource;
import org.geotools.data.postgis.PostgisDataStore;
import org.geotools.data.postgis.PostgisDataStoreFactory;
import org.geotools.feature.FeatureIterator;
import org.geotools.map.DefaultMapContext;
import org.geotools.map.MapContext;
import org.geotools.styling.SLD;
import org.geotools.styling.Style;
import org.geotools.swing.JMapFrame;
import com.vividsolutions.jts.io.ParseException;
public class GetPostgisData {
private static final Logger LOGGER = Logger.getLogger("org.geotools.postgis");
static PostgisDataStore pgDatastore;
static PostgisDataStoreFactory factory=new PostgisDataStoreFactory();
static FeatureSource fsBC;
@SuppressWarnings( "unchecked" )
private static void ConnPostGis(String dbtype,String URL, int port,String database,
String user,String password) {
Map params = new HashMap();
params.put("dbtype","postgis");
params.put( "host" , URL);
params.put( "port" , new Integer(port));
params.put( "database" , database);
params.put( "user" , user);
params.put( "passwd" , password);
try {
pgDatastore = (PostgisDataStore) DataStoreFinder.getDataStore(params);
if (pgDatastore != null ) {
System.out.println( " 系统连接到位于: " + URL + " 的空间数据库 " + database + " 成功! " );
} else {
System.out.println( " 系统连接到位于: " + URL + " 的空间数据库 " + database + " 失败!请检查相关参数 " );
}
} catch (IOException e) {
e.printStackTrace();
System.out.println( " 系统连接到位于: " + URL + " 的空间数据库 " + database + " 失败!请检查相关参数 " );
}
}
public static void main(String[] args) throws IOException, ParseException {
ConnPostGis( "" , "localhost" , 5432 , "mygis" , "postgres" , "root" );
/**/ /* 读取指定类型名的地理特征 */
FeatureSource fsBC = pgDatastore.getFeatureSource("tl_2010_36_elsd10");
FeatureIterator inte = fsBC.getFeatures().features();
Style shpStyle = SLD.createPolygonStyle(Color.YELLOW, null, 0.0f);
// Set up a MapContext with the two layers
final MapContext map = new DefaultMapContext();
map.setTitle("ImageLab");
map.addLayer(fsBC, shpStyle);
JMapFrame frame = new JMapFrame(map);
frame.setSize(800, 600);
frame.enableStatusBar(true);
frame.enableTool(JMapFrame.Tool.ZOOM, JMapFrame.Tool.PAN, JMapFrame.Tool.RESET);
frame.enableToolBar(true);
JMenuBar menuBar = new JMenuBar();
frame.setJMenuBar(menuBar);
JMenu menu = new JMenu("Raster");
menuBar.add(menu);
frame.repaint();
frame.setVisible(true);
}
}
- geotools学习1从postgressql取shp并且展示(java postgis)
- geotools学习1从postgressql取shp并且展示(java postgis)
- Geotools读取shp文件并在Ol2中展示
- shp文件导入postgis
- postgis导出shp文件
- JAVA调用cmd命令将shp数据存入postgis
- 【GeoTools】shp文件坐标转换
- shp文件坐标系转换-PostGIS
- geotools学习1--org.geotools.demo例子FirstProject
- GeoTools学习
- geotools学习
- 终于搞定GeoTools对PostGis的操作
- 终于搞定GeoTools对PostGis的操作
- Geotools 对shp数据的样式修改
- geoTools向shp文件中写数据
- 用GeoTools实现shp+sld导出图片
- geotools实现shp数据的缓冲区分析
- GeoTools学习篇------GeoTools体系
- 更新-清理sga组件
- 人生与电路设计 相同之处
- 数字地和模拟地的区别
- Ubuntu 8.04下配置NFS服务
- 使用js强制浏览器不缓存网页,在某些实时性网页上使用
- geotools学习1从postgressql取shp并且展示(java postgis)
- 【小结】JavaScript函数定义的一些注意事项
- 获取剪贴板文本
- typedef用法
- MySQL备份恢复方案
- Openlayer地图出不来或地图出来了,但是初始没有居中显示
- MySQL备份恢复方案
- Java中文处理学习笔记——Hello Unicode
- 如何判断Android手机当前是否联网?