public class Datasources extends Object
数据源的集合类。
对数据源进行管理,包括创建、打开、关闭数据源等功能。
一个工作空间的所有数据源都由一个数据源集合对象来进行管理。该类可以同时管理多种类型的数据源(UDB、Oracle、 SQL Server、PostgreSQL、DB2 等数据源),即在一个数据源集合对象中可以同时包括各种类型的数据源。实现了对数据源的无缝管理。public int getCount()
public boolean add(Datasource datasource)
datasource
- 数据源对象。public Datasource get(int index)
index
- 指定的数据源的序号。public Datasource get(String alias)
alias
- 指定的数据源的别名。public Datasource open(DatasourceConnectionInfo connectionInfo)
connectionInfo
- 指定的数据源连接信息。DatasourceConnectionInfo
类的示例。public Datasource create(DatasourceConnectionInfo connectionInfo)
创建 DB2 数据源之前,需要先在其客户端新建一个数据库,然后在这个空数据库下进行数据源的创建。
创建内存数据源的方式:
datasourceConnnectionInfo.setEngineType(EngineType.UDB);
datasourceConnnectionInfo.setServer(":memory:");
在Windows平台下使用 Datasources.Create() 方法创建文件型数据源时,由于Windows资源的限制,单个应用程序允许打开的文件句柄数不能大于509个,因此,当创建第509个文件型数据源时,会发生以下两种情况:
1. 如果用户配置的是文件型许可,则在创建第509个文件型数据源后,将抛出许可异常;
2. 如果用户配置的是硬件许可,则在创建第509个文件型数据源后,Datasources.Create() 方法返回null值。
connectionInfo
- 数据源连接信息。public void datasourcesExample() { Workspace workspace = new Workspace(); //设置 OraclePlus 数据源连接信息(对于 SQL Server 类型的数据源,还要设置驱动,即 info.setDriver("SQL Server")) DatasourceConnectionInfo info = new DatasourceConnectionInfo(); info.setAlias("supermap_alias"); info.setDatabase("ugo"); info.setEngineType(EngineType.ORACLEPLUS); info.setUser("map"); info.setPassword("map"); info.setServer("supermap"); //创建数据源 Datasources datasources = workspace.getDatasources(); Datasource datsource = datasources.create(info); //判断是否创建成功 if (datsource == null) { System.out.println("数据源创建失败"); } else { System.out.println("数据源创建成功"); } //释放资源 workspace.dispose(); }
public boolean close(int index)
index
- 指定的数据源的序号。public boolean close(String alias)
alias
- 指定的数据源的别名。public void closeAll()
public boolean contains(String alias)
alias
- 指定的数据源的别名。public int indexOf(String alias)
alias
- 指定的数据源的别名。public boolean modifyAlias(String oldAlias, String newAlias)
oldAlias
- 待修改的数据源别名。newAlias
- 数据源的新别名。Datasources.modifyAlias ("aaa","AAA")
返回值为 false,重命名失败。public void addClosingListener(DatasourceClosingListener l)
DatasourceClosingEvent
)的监听器。l
- 一个用于接收数据源正在关闭事件的监听器。public void removeClosingListener(DatasourceClosingListener l)
DatasourceClosingEvent
)的监听器。l
- 一个用于接收数据源正在关闭事件的监听器。public void addClosedListener(DatasourceClosedListener l)
DatasourceClosedEvent
)的监听器。l
- 一个用于接收数据源关闭后事件的监听器。public void removeClosedListener(DatasourceClosedListener l)
DatasourceClosedEvent
)的监听器。l
- 一个用于接收数据源关闭后事件的监听器。public void addAliasModifiedListener(DatasourceAliasModifiedListener l)
DatasourceAliasModifiedEvent
)的监听器。l
- 一个用于接收修改数据源别名结束事件的监听器。public void removeAliasModifiedListener(DatasourceAliasModifiedListener l)
DatasourceAliasModifiedEvent
)的监听器。l
- 一个用于接收修改数据源别名结束事件的监听器。public void addOpenedListener(DatasourceOpenedListener l)
DatasourceOpenedEvent
)的监听器。l
- 一个用于接收数据源打开事件的监听器。public void removeOpenedListener(DatasourceOpenedListener l)
DatasourceOpenedEvent
)的监听器。l
- 一个用于接收数据源打开事件的监听器。public void addCreatedListener(DatasourceCreatedListener l)
DatasourceCreatedEvent
)的监听器。l
- 一个用于接收数据源创建事件的监听器。public void removeCreatedListener(DatasourceCreatedListener l)
DatasourceCreatedEvent
)的监听器。l
- 一个用于接收数据源创建事件的监听器。public void addAliasModifyingListener(DatasourceAliasModifyingListener l)
DatasourceAliasModifyingEvent
)的监听器。l
- 一个用于接收数据源别名被修改事件的监听器。public void removeAliasModifyingListener(DatasourceAliasModifyingListener l)
DatasourceAliasModifyingEvent
)的监听器。l
- 一个用于接收数据源别名被修改事件的监听器。public boolean fixDatasource(DatasourceConnectionInfo connectionInfo)
connectionInfo
- 待修复的数据源连接信息。Copyright © 2021–2024 SuperMap. All rights reserved.