Java API
此部分是相关 Java API 文档。
历史更新情况
注意:
- 删除接口 - 不再兼容
- 废弃接口 - 保持兼容性Version 3.0
None.
Version 2.10
com.sequoiadb.base.Sequoiadb 内容变更:
- 删除getConnection方法,IConnection是内部网络通信接口,不再对外开放。
- 删除getDataCenter方法。
- 删除setServerAddress方法,该方法无意义。
- 废弃getServerAddress方法,增加getHost、getPort方法。
- 废弃changeConnectionOptions方法。
- 废弃disconnect方法。
- 废弃com.sequoiadb.net.ConfigOptions相关的构造方法,增加com.sequoiadb.base.ConfigOptions相关的构造方法。
- 废弃isEndianConvert方法,增加getByteOrder方法。
- closeAllCursors方法在连接已关闭时不再报错。
- 实现java.io.Closeable接口,增加close方法,在JDK1.7上支持资源自动释放。新增的close方法取代disconnect接口。
- 增加getLastUseTime方法,该接口主要被数据源使用。
- 增加close方法取代原来disconnect的功能。
- 增加sync方法控制数据持久化。
- setSessionAttr接口增加可以从多个 Instance 中选出目标 Instance 的功能。
com.sequoiadb.base.DBCollection 内容变更:
- getCollection方法要获取的collection不存在时,不再返回null而是抛出异常。
- 增加openLob(ObjectId id, int mode)方法,其中mode取值为DBLob.SDB_LOB_READ或DBLob.SDB_LOB_WRITE。
- 增加truncateLob方法。
- 增加enableSharding方法,对集合启用分区功能
- 增加disableSharding方法,对集合关闭分区功能
- 增加enableCompression方法,对集合启用压缩功能
- 增加disableCompression方法,对集合关闭压缩功能
- 增加setAttributes方法,对集合的属性进行修改
com.sequoiadb.base.DBCursor 内容变更:
- 实现java.io.Closeable接口,在JDK1.7上支持资源自动释放。
- getNext和getNextRaw方法可以混合交替使用。
- 废弃hasNextRaw接口,可使用hasNext取代该接口。
com.sequoiadb.base.DBLob 内容变更:
- 增加lock方法。
- 增加lockAndSeek方法。
- 增加getModificationTime方法。
- seek方法原来只能在读lob模式下使用,现在该方法支持在创建的lob或写lob模式下使用。
com.sequoiadb.base.Domain 内容变更:
- 修复isDomainExist接口可能存在游标泄露的情况(SEQUOIADBMAINSTREAM-3264)。
- 增加addGroups方法,向域中添加数据组
- 增加setGroups方法,对域设置数据组
- 增加removeGroups方法,移除属于域的某些数据组
- 增加setAttributes方法,设置域的属性
com.sequoiadb.base.ReplicaGroup 内容变更:
- 废弃getNodeNum接口,该接口描述的节点状态信息不准确。
- getSlave方法增加可指定节点位置的参数。
com.sequoiadb.base.Node 内容变更:
- 废弃getStatus接口,该接口描述的节点状态信息不准确。
废弃com.sequoiadb.base.SequoiadbDatasource 类,增加com.sequoiadb.datasource.SequoiadbDatasource 类。
com.sequoiadb.datasource.DatasourceOptions 内容变更:
- setSyncCoordInterval(int syncCoordInterval)接口正常的输入参数syncCoordInterval 的值若小于60,000,该接口自动将输入值改为60,000。
- 增加getPreferedInstance/setPreferedInstance接口,使连接池支持设置回话属性。
删除 com.sequoiadb.base.DataCenter 接口,待相关功能发布之后再提供接口。
org.bson.BSONObject 接口实现 java.io.Serializable 接口。
org.bson.types.BSONTimestamp 支持从 java.util.Date和java.sql.Timestamp 构造,并增加转换为 java.util.Date和java.sql.Timestamp 的方法。
BSONObject支持将 java.sql.Timestamp 编码为 timestamp 类型。
com.sequoiadb.base.CollectionSpace 内容变更
- 增加alter方法,对集合空间的属性进行修改
- 增加setAttributes方法,对集合空间的属性进行修改
- 增加setDomain方法,修改集合空间所属的域
- 增加removeDomain方法,移除集合空间所属的域Version 1.10
DBCollection类新添加的接口:
- createLob,创建一个大对象。
- openLob,打开一个已存在的大对象。
- removeLob,删除一个大对象。
- listLobs,列出所有大对象。
- explain,获取执行访问计划。
增加大对象类DBLob,用于操作大对象:
- write,向一个大对象写入数据。
- read,从大对象中读取数据。
- seek,指定读取数据的偏移。
- close,关闭一个大对象。
- getID,获取大对象的标识ID。
- getSize,获取大对象的大小。
- getCreateTime,获取大对象的创建时间。Version 1.8
Sequoiadb 类新添加的接口:
- isValid,判断当前连接是否有效。
- createCollectionSpace,提供一个 BSONObject 的选项,使创建集合空间更加灵活。
- backup,备份支持更多的选项。
- evalJS,执行javascript代码。
- createDomain,创建域。
- getDomain,获取域。
- dropDomain,删除域。
- isDomainExist,域是否存在。
- listDomain,列出所有域。
DBCollection 类新添加的接口:
- alterCollection,修改集合(表)属性setMainKeys,设置主键。此接口只与 save 接口配合使用,它设置的主键并不对其他接口起作用。
- save,可使用默认的主键"_id"或者指定其他主键,同时插入或更新多条记录。
添加 Domain 类用于与域相关的操作。
SequoiadbDatasource类新添加的接口:
- SequoiadbDatasource,可提供多个地址的构造器,便于机器负载均衡。
- getIdleConnNum,获取当前可用的连接数量。
- getUsedConnNum,获取当前已使用的连接数量。
- getNormalAddrNum,获取当前正常的地址数量。
- getAbnormalAddrNum,获取当前异常的地址数量。
SequoiadbOption类新添加接口:
- setRecaptureConnPeriod,设置周期检测异常地址是否重新可用的时间。
- getRecaptureConnPeriod,获取周期检测异常地址是否重新可用的时间。Version 1.6
添加类Node来取代原来的类ReplicaGroup。类 ReplicaNode 以及与它们相关的方法将在 version 2.x 中被弃用。详情请查看相关 Java API。