`
lorry1113
  • 浏览: 263289 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA 连接 sde

    博客分类:
  • GIS
阅读更多
// Create the SdeWorkspaceFactory   
try {   
SdeWorkspaceFactory sdeFact = new SdeWorkspaceFactory();   
// Create a PropertySet object that will contain all of the   
// SDE connection parameters   
PropertySet propSet = new PropertySet();   
  
// Populate the property set with the connection parameters   
propSet.setProperty("SERVER", "192.168.222.128");   
propSet.setProperty("INSTANCE", "5151");   
propSet.setProperty("DATABASE", "sde");   
propSet.setProperty("USER", "sde");   
propSet.setProperty("PASSWORD", "sde");   
propSet.setProperty("VERSION", "sde.DEFAULT");   
  
// Open the ArcSDE workspace using the connection PropertySet   
Workspace ws = new Workspace(sdeFact.open(propSet, 0));   
  
// Get the collection of dataset names in the database and display their names   
IEnumDatasetName dsNames = ws.getDatasetNames(esriDatasetType.esriDTAny);   
  
IDatasetName name = dsNames.next();   
while (name != null) {   
System.out.println(name.getName());   
name = dsNames.next();   
}   
} catch (IOException e) {   
e.printStackTrace();   
}  

总是报错误
Could not load native libraries. ArcGIS/bin should be added to the system PATH environment variable.   
java.lang.UnsatisfiedLinkError: no ntvauth in java.library.path   
java.lang.UnsatisfiedLinkError: no ntvauth in java.library.path   
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)   
at java.lang.Runtime.loadLibrary0(Runtime.java:822)   
at java.lang.System.loadLibrary(System.java:993)   
at com.esri.arcgis.interop.NativeLoader.loadLibrary(Unknown Source)   
at com.esri.arcgis.interop.NativeAuth.c(Unknown Source)   
at com.esri.arcgis.interop.c.a(Unknown Source)   
at com.esri.arcgis.interop.bc.a(Unknown Source)   
at com.esri.arcgis.interop.jb.a(Unknown Source)   
at com.esri.arcgis.interop.Dispatch.createDispatch(Unknown Source)   
at com.esri.arcgis.interop.Dispatch.<init>(Unknown Source)   
at com.esri.arcgis.geodatabase.IWorkspaceFactoryProxy.<init>(Unknown Source)   
at com.esri.arcgis.datasourcesGDB.SdeWorkspaceFactory.<init>(Unknown Source)   
at com.esri.arcgis.datasourcesGDB.SdeWorkspaceFactory.<init>(Unknown Source)   
at com.dist.FlexGIS.Operation.main(Operation.java:24)  


   
查找了很多资料,有人说需要把ntvauth.dll加到path环境变量中,但是我没有找到ntvauth.dll,请高手赐教ntvauth.dll 在什么位置,需要装什么软件吗,我已经安装了server(java),engine(java,。net)和sde了。

解决方案:
把Server初始化一下就可以了
提供一个参考代码
ServerInitializer serverInitializer = new ServerInitializer();
serverInitializer.initializeServer("workgroup", "arcgismanager", "1");
ServerConnection connection = new ServerConnection();
connection.connect("192.168.222.128");
IServerObjectManager som = connection.getServerObjectManager();
IServerContext context = som.createServerContext("HY","MapServer");
// Create a PropertySet object that will contain all of the
// SDE connection parameters
IPropertySet propSet = (PropertySet)context.createObject(PropertySet.getClsid());//new PropertySet();
//&nbsp;IPropertySet propSet = new PropertySet();
// Populate the property set with the connection parameters
propSet.setProperty("SERVER", "192.168.222.128");
propSet.setProperty("INSTANCE", "5151");
propSet.setProperty("DATABASE", "sde");
propSet.setProperty("USER", "sde");
propSet.setProperty("PASSWORD", "sde");
propSet.setProperty("VERSION", "sde.DEFAULT");
IWorkspaceFactory sdeFact = (IWorkspaceFactory)context.createObject(SdeWorkspaceFactory.getClsid());//new SdeWorkspaceFactory();
//IWorkspaceFactory sdeFact = new SdeWorkspaceFactory();
// Open the ArcSDE workspace using the connection PropertySet
IWorkspace ws = sdeFact.open(propSet, 0);
//Workspace ws = new Workspace(sdeFact.open(propSet, 0));
IFeatureWorkspace featureWorkspace = (IFeatureWorkspace)ws;
IWorkspaceEdit eWorkspace = (IWorkspaceEdit)ws;
IFeatureDataset featureDataset = featureWorkspace.openFeatureDataset("ZT_HY");&nbsp; &nbsp;
IWorkspace workspace = featureDataset.getWorkspace();
IFeatureWorkspace fWorkspace = new IFeatureWorkspaceProxy(workspace);
分享到:
评论

相关推荐

    ArcGISEngine10.1访问ArcSDE

    描述arcgis 连接sde的不同方式。直连式、服务式、连接文件式、连接字符串式

    arcgis_SDE_for_Java样例.pdf

    arcgis_SDE_for_Java样例

    Arcgis10.3创建SDE数据库、导入、导出手册

    在ArcGIS中,通过“数据库连接”功能,输入之前设定的数据库平台、实例、管理员信息,以及SDE和地理数据库管理员的凭证,建立与SDE数据库的连接。 三、创建特征类(建立空间表) 在ArcMap中,通过右键新建Feature ...

    sde 帮助文档 dev_help

    总结起来,SDE的C和Java API是开发人员进行空间数据管理的关键工具,它们提供了丰富的功能,涵盖了数据库连接、对象操作、版本管理、查询过滤等多个层面。通过深入理解和熟练运用这些API,开发者能够构建出高效、...

    ArcSdeSDK(C API+JAVA API)

    1. 数据存取:C API提供了连接、打开、关闭数据库以及获取和修改记录的函数,如`sde_connect`、`sde_open_table`等。 2. 编辑操作:通过`start_edit_session`、`apply_edits`等函数实现对地理对象的添加、删除和修改...

    JAVA调用GDAL库需要的dll文件

    `hdf5.dll`和`hdf5dll.dll`用于处理HDF5文件,`libmysql.dll`是MySQL数据库连接库,`libeay32.dll`则与OpenSSL相关,用于加密和安全通信。 2. **JNI调用**: 要在Java中调用GDAL,首先需要创建一个Java Native ...

    sdeimShp.java

    本代码主要是,实现了arcgis for java 存后台使用连接sde库,导入shp文件,包含使用arcObject.jar包实现的数据导入功能

    ArcSde for java 的jar包

    它提供了对SDE连接管理、数据存取、事务处理、几何对象操作等功能的支持。 2. **jsde_sdk.jar**:JavaScript for SDE (JSDE) SDK的Java版本,主要用于在Web应用程序中与ArcSDE进行交互。这个库提供了与jpe_sdk.jar...

    arcgisengine, sde ,server,license

    - **ArcSDE.ecp**:此文件可能涉及到ArcSDE的配置,可能包含了连接信息、数据库设置、版本管理等参数,用于设置和管理SDE数据库连接。 综上所述,ArcGIS Engine、ArcSDE、ArcGIS Server和许可证管理是GIS开发和部署...

    ArcSDE SDK Java 快速实践.pdf

    总结来说,ArcSDE SDK Java 提供了一整套工具和方法来实现GIS应用的开发,包括几何对象的创建与操作、数据库连接管理、表和图层的定义与管理、数据操作、图层锁的使用以及版本管理等功能。通过这些API的支持,开发者...

    基于ArcSDE C API的ArcSDE客户端实现方法.zip

    2. 创建连接:使用sde_connect()函数建立与ArcSDE服务器的连接,需要提供服务器名称、实例名、用户认证信息等参数。 3. 数据库操作:连接建立后,可以进行数据库操作,例如创建表、插入、更新和删除数据。ArcSDE C ...

    SQL空间查询ST_Geometry配置

    - `tnsnames.ora`文件中也需要相应地设置连接数据。 - **Unix/Linux环境下**: - 类似地,在`listener.ora`文件中指定环境变量,但路径指向的是`.so`或`.sl`格式的库文件。 - `tnsnames.ora`同样需要配置连接...

    refreshconn.zip_Java_

    3. **SDE连接管理**:了解如何在Java中创建和管理SDE连接,包括连接字符串的构造、连接池的使用以及如何处理连接的生命周期。 4. **数据库连接与SQL**:由于SDE通常与关系数据库(如Oracle、SQL Server)结合使用,...

    ArcSDE JAR包

    例如,`arcgisserver.jar`通常包含了ArcGIS Server的核心功能,`sde.jar`则是与ArcSDE数据库连接的关键组件,而其他如`geotools.jar`等可能是为了兼容Geoserver的GeoTools库。 将这些JAR包添加到Geoserver的类路径...

    Creador-de-examenes-java-swing-y-MySQL.:Proyecto basado en java Swing Hecho en el segundoañode carrera,funónónprincipaldel programa es la de,trafésde una interfaz grafica,crear y realizar测试por个性化por的“ Profesor” traabajando atravésde bases de datos

    在数据库方面,他们可能学习了SQL语言,包括SELECT、INSERT、UPDATE和DELETE语句,以及如何使用Java的JDBC(Java Database Connectivity)接口连接和操作MySQL数据库。 总的来说,"Creador-de-examenes-java-swing-...

    SDE-Problems

    这个压缩包中的内容可能包含了对以上各个知识点的实战练习或者解析,对于想要提升Java编程技能或准备SDE面试的人来说,是一个宝贵的资源。通过深入学习和实践,可以提高对Java语言和软件开发的理解,为职业发展打下...

    geoserver-2.16.4-arcsde-plugin.zip

    jsqlparser-0.3.14.jar是一个Java SQL解析库,用于解析和处理SQL查询,这对于与ArcSDE数据库交互至关重要。commons-pool-1.5.4.jar是Apache Commons的一个子项目,提供对象池服务,优化资源的分配和使用。gt-arcsde...

    ArcSDE 直连 总结

    propertySet.SetProperty("USER", "sde"); propertySet.SetProperty("PASSWORD", "password"); propertySet.SetProperty("VERSION", "10.1"); IWorkspaceFactory2 workspaceFactory = new SdeWorkspaceFactoryClass...

    arcsde9.3.1 for oracle10g and redhat_5.5_x64安装文档_v1.doc

    使用ArcSDE Administration工具或geodatabase连接工具配置SDE实例,连接到刚刚创建的Oracle数据库,建立数据存储。 **3.4 数据迁移与发布** 如果有现有GIS数据,可以通过ArcSDE的迁移工具将其导入新创建的...

    ArcSDE 完全手册

    5. **ArcSDE开发**:对于开发人员,手册将介绍如何利用ArcSDE的API(如Java、.NET)进行应用开发,创建定制的GIS功能。包括连接数据库、执行SQL查询、处理地理特征等操作。 6. **数据迁移与整合**:了解如何将现有...

Global site tag (gtag.js) - Google Analytics