java arcsde 连接oracle
package com.digitalchina.arcgis.common;import java.util.Calendar;import com.esri.sde.sdk.client.SeConnection;import com.esri.sde.sdk.client.SeCoordinateReference;import com.esri.sde.sdk.client.SeDelete;import com.esri.sde.sdk.client.SeException;import com.esri.sde.sdk.client.SeInsert;import com.esri.sde.sdk.client.SeLayer;import com.esri.sde.sdk.client.SeRow;import com.esri.sde.sdk.client.SeShape;public class SDEDBManager {private static String server = "192.168.1.200";private static String instance ="5151";private static String database = "ORCL";private static String username = "sde";private static String password = "sde";public static SeConnection getConn() {SeConnection conn = null;if (conn == null) {try {conn = new SeConnection(server, instance, database, username,password);} catch (SeException ex) {ex.printStackTrace();}}return conn;}public static void main(String args[]){ new SDEDBManager().delete("camera");//new SDEDBManager().insertOnePoint();}public void insert(){SeConnection conn=getConn();if(conn!=null){try{SeInsert insert =new SeInsert(conn);insert.intoTable("PT", new String[]{"SHAPE","NAME","VISITTIME","FCC","FROMTIME","TOTIME","SUBTYPES" });insert.setWriteMode(true);//开启bufferSeLayer layer=new SeLayer(conn,"PT","SHAPE");SeCoordinateReference cr =layer.getCoordRef(); for(int i=0;i<10;i++){SeRow row =insert.getRowToSet();SeShape shape=new SeShape(cr);String wkt="POINT("+i+" "+i+")";shape.generateFromText(wkt);row.setShape(0, shape);row.setNString(1, "名称"+i);row.setDouble(2, 20.0);row.setNString(3, "D31");row.setTime(4,Calendar.getInstance());row.setTime(5,Calendar.getInstance());row.setInteger(6, new Integer(2));insert.execute(); }insert.flushBufferedWrites();insert.close();}catch(SeException e){e.printStackTrace();}finally{try{conn.close();}catch(SeException e){e.printStackTrace();}}}}public void delete(String tableName){SeConnectionconn=getConn();if(conn!=null){try{ SeDelete delete = new SeDelete(conn); delete.fromTable(tableName, "OBJECTID>0");}catch(SeException e){e.printStackTrace();}finally{try{conn.close();}catch(SeException e){e.printStackTrace();}}}}public void insertOnePoint(){SeConnectionconn=getConn();if(conn!=null){try{SeInsert insert =new SeInsert(conn);insert.intoTable("FIRE", new String[]{"SHAPE","NAME", "FROMTIME","TOTIME","SUBTYPES" });insert.setWriteMode(true);//开启bufferSeLayer layer=new SeLayer(conn,"HOSPITAL","SHAPE");SeCoordinateReference cr =layer.getCoordRef();SeRow row =insert.getRowToSet();SeShape shape=new SeShape(cr);String wkt="POINT(-122.43644 37.76927)";shape.generateFromText(wkt);row.setShape(0, shape);row.setNString(1, "FIRE CENTER");row.setTime(2,Calendar.getInstance());row.setTime(3,Calendar.getInstance());row.setInteger(4, new Integer(2));insert.execute();insert.flushBufferedWrites();insert.close();}catch(SeException e){e.printStackTrace();}finally{try{conn.close();}catch(SeException e){e.printStackTrace();}}}} }
??