⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 databinding.java

📁 MapXtreme 用于电子地图制作与分析
💻 JAVA
字号:
package barchant;import java.lang.*;import java.util.*;import java.awt.*;import com.mapinfo.mapj.*;import javax.swing.*;import com.mapinfo.beans.vmapj.VisualMapJ;//以下包是用于数据绑定的import com.mapinfo.dp.tab.TABDataProviderHelper;import com.mapinfo.dp.tab.TABTableDescHelper;import com.mapinfo.dp.databinding.JDBCTableDescHelper;import com.mapinfo.dp.databinding.JDBCDataProviderHelper;import com.mapinfo.dp.databinding.DataBindingDataProviderHelper;import com.mapinfo.dp.databinding.DataBindingTableDescHelper;import com.mapinfo.mapxtreme.client.MapXtremeDataProviderRef;/* 本例用于显示怎样将数据库中的属性数据与地图进行动态连接,即可在本地的地图tab上,加上数据库的属性数据 在DataProvider例子中是将数据库的空间数据整个下载显示出来,而本例则是采用本地的空间数据而没有用数据库中的 */public class DataBinding extends JFrame{  public FeatureLayer world;//Feature对象用来访问地图对象  public ArrayList cols;  public VisualMapJ myMap;//可管理地图集的各种状态,并向服务器转发客户请求  public Hashtable ht;  public DataBinding() {    try{     //创建地图     myMap=new VisualMapJ();    //该目录下tab,map,dat文件是必需的    String tabDir = "d:\\program files\\MapInfo\\MapXtreme-4.7.0\\examples\\server\\data";     //为每个表创建DataProviderHelper,用于定义数据源,这里是为本地文件创建     TABDataProviderHelper tabDPH = new TABDataProviderHelper(tabDir);     String tabFile = "world.tab";     /*      作了以下测试,将一个含有country字段的songqian.tab空白图层与world表中的country属性相连,成功      */     //为每个表创建TableDescHelper,用于描述数据,这里是为本地文件创建     TABTableDescHelper tabDesc = new TABTableDescHelper(tabFile);     String dbUrl = "jdbc:oracle:thin:@172.23.206.229:1521:lk";     String user = "system";     String password = "manager";     String driverClass = "oracle.jdbc.driver.OracleDriver";     //为每个表创建DataProviderHelper,这里是为数据库表创建     JDBCDataProviderHelper jdbcDPH = new JDBCDataProviderHelper(dbUrl, user, password, driverClass);     String tableName = "world";     //为每个表创建TableDescHelper,用于描述数据,这里是为数据库表创建     JDBCTableDescHelper jdbcDesc = new JDBCTableDescHelper(tableName, user);     //创建DataBindingDataProviderHelper,用于定义数据源,将本地文件和数据库表连接     DataBindingDataProviderHelper dbDPH = new DataBindingDataProviderHelper(tabDPH, jdbcDPH);     String[] tabBindCol = {"country"};     String[] jdbcBindCol = {"country"};     //创建DataBindingTableDescHelper,用于描述数据,将本地文件和数据库表连接     DataBindingTableDescHelper dbDesc = new DataBindingTableDescHelper(tabDesc, jdbcDesc, tabBindCol,jdbcBindCol);     //创建DataProviderRef用于描述获取数据的方式     String servletUrl = "http://localhost:8088/mapxtreme47/mapxtreme";     MapXtremeDataProviderRef dpRef = new MapXtremeDataProviderRef(dbDPH, servletUrl);     //添加该层     myMap.getMapJ().getLayers().addLayer(dpRef, dbDesc, "DataBinding Layer");     //布局      this.setSize(800,500);      //地图放中间      this.getContentPane().add(myMap,BorderLayout.CENTER);      this.setVisible(true);      this.show();        }catch(Exception e){          System.out.println("Error");          e.printStackTrace();        }}      public static void main(String args[]){    DataBinding dp=new DataBinding();  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -