接口 Collection
-
- 所有超级接口:
DatabaseObject
- 所有已知实现类:
CollectionImpl
public interface Collection extends DatabaseObject
Representation of a document collection. This interface allows access to and manipulation of the collection through add/find/modify/remove statements.
-
-
嵌套类概要
-
从接口继承的嵌套类/接口 com.mysql.cj.xdevapi.DatabaseObject
DatabaseObject.DbObjectStatus, DatabaseObject.DbObjectType
-
-
方法概要
所有方法 实例方法 抽象方法 修饰符和类型 方法 说明 AddStatementadd(DbDoc document)Add a document in the form of a DbDoc.AddStatementadd(DbDoc... documents)Add a sequence of documents.AddStatementadd(String... jsonStrings)Add one or more documents.AddStatementadd(Map<String,?> doc)Add a document in the form of a Map.ResultaddOrReplaceOne(String id, DbDoc doc)Adds the document to the collection.ResultaddOrReplaceOne(String id, String jsonString)Adds the document to the collection.longcount()Query the number of documents in this collection.ResultcreateIndex(String indexName, DbDoc indexDefinition)Create a new statement defining the creation of an index on this collection.ResultcreateIndex(String indexName, String jsonIndexDefinition)Create a new statement defining the creation of an index on this collection.voiddropIndex(String indexName)Create a new statement defining the removal of an index on this collection.FindStatementfind()Create a new find statement retrieving all documents in the collection.FindStatementfind(String searchCondition)Create a new find statement retrieving documents matching the given search condition.DbDocgetOne(String id)Return the document with the given id.ModifyStatementmodify(String searchCondition)Create a new modify statement affecting documents matching the given search condition.DbDocnewDoc()Create a new document.RemoveStatementremove(String searchCondition)Create a new removal statement affecting documents matching the given search condition.ResultremoveOne(String id)Removes the document with the given id.ResultreplaceOne(String id, DbDoc doc)Takes in a document object that will replace the matching document.ResultreplaceOne(String id, String jsonString)Takes in a document object that will replace the matching document.-
从接口继承的方法 com.mysql.cj.xdevapi.DatabaseObject
existsInDatabase, getName, getSchema, getSession
-
-
-
-
方法详细资料
-
add
AddStatement add(Map<String,?> doc)
Add a document in the form of a Map.- 参数:
doc- map of key-value parameters representing the document fields- 返回:
AddStatement
-
add
AddStatement add(String... jsonStrings)
Add one or more documents.- 参数:
jsonStrings- one or more documents given as JSON strings- 返回:
AddStatement
-
add
AddStatement add(DbDoc document)
Add a document in the form of a DbDoc.- 参数:
document-DbDoc- 返回:
AddStatement
-
add
AddStatement add(DbDoc... documents)
Add a sequence of documents.- 参数:
documents- one or more documents given asDbDoc- 返回:
AddStatement
-
find
FindStatement find()
Create a new find statement retrieving all documents in the collection.- 返回:
FindStatement
-
find
FindStatement find(String searchCondition)
Create a new find statement retrieving documents matching the given search condition.- 参数:
searchCondition- condition expression- 返回:
FindStatement
-
modify
ModifyStatement modify(String searchCondition)
Create a new modify statement affecting documents matching the given search condition.- 参数:
searchCondition- condition expression- 返回:
ModifyStatement
-
remove
RemoveStatement remove(String searchCondition)
Create a new removal statement affecting documents matching the given search condition.- 参数:
searchCondition- condition expression- 返回:
RemoveStatement
-
createIndex
Result createIndex(String indexName, DbDoc indexDefinition)
Create a new statement defining the creation of an index on this collection.Example: collection.createIndex("myIndex", "{\"fields\": [{\"field\": \"$.myGeoJsonField\", \"type\": \"GEOJSON\", \"required\": true, \"options\": 2, \"srid\": 4326}], \"type\":\"SPATIAL\"}");
- 参数:
indexName- index nameindexDefinition- JSON document with the following fields:- fields: array of IndexField objects, each describing a single document member to be included in the index (see below)
- type: string, (optional) the type of index. One of INDEX or SPATIAL (case insensitive). Default is INDEX and may be omitted.
- field: string, the full document path to the document member or field to be indexed
- type: string, one of the supported SQL column types to map the field into (see below for a list). For numeric types, the optional UNSIGNED keyword may follow. For the TEXT type, the length to consider for indexing may be added. Type descriptions are case insensitive.
- required: bool, (optional) true if the field is required to exist in the document. Defaults to false, except for GEOJSON where it defaults to true
- options: int, (optional) special option flags for use when decoding GEOJSON data
- srid: int, (optional) srid value for use when decoding GEOJSON data
- 返回:
Result
-
createIndex
Result createIndex(String indexName, String jsonIndexDefinition)
Create a new statement defining the creation of an index on this collection.Example: collection.createIndex("myIndex", "{\"fields\": [{\"field\": \"$.myGeoJsonField\", \"type\": \"GEOJSON\", \"required\": true, \"options\": 2, \"srid\": 4326}], \"type\":\"SPATIAL\"}");
- 参数:
indexName- index namejsonIndexDefinition- JSON document with the following fields:- fields: array of IndexField objects, each describing a single document member to be included in the index (see below)
- type: string, (optional) the type of index. One of INDEX or SPATIAL. Default is INDEX and may be omitted.
- field: string, the full document path to the document member or field to be indexed
- type: string, one of the supported SQL column types to map the field into (see below for a list). For numeric types, the optional UNSIGNED keyword may follow. For the TEXT type, the length to consider for indexing may be added.
- required: bool, (optional) true if the field is required to exist in the document. Defaults to false, except for GEOJSON where it defaults to true
- options: int, (optional) special option flags for use when decoding GEOJSON data
- srid: int, (optional) srid value for use when decoding GEOJSON data
- 返回:
Result
-
dropIndex
void dropIndex(String indexName)
Create a new statement defining the removal of an index on this collection.- 参数:
indexName- index name
-
count
long count()
Query the number of documents in this collection.- 返回:
- The number of documents in this collection
-
replaceOne
Result replaceOne(String id, DbDoc doc)
Takes in a document object that will replace the matching document. If no matches are found, the function returns normally with no changes being made.- 参数:
id- the document id of the document to be replaceddoc- the new document, which may contain expressions. If document contains an _id value, it is ignored.- 返回:
- Result object, which will indicate the number of affected documents (1 or 0, if none)
-
replaceOne
Result replaceOne(String id, String jsonString)
Takes in a document object that will replace the matching document. If no matches are found, the function returns normally with no changes being made.- 参数:
id- the document id of the document to be replacedjsonString- the new document, given as JSON string, which may contain expressions. If document contains an _id value, it is ignored.- 返回:
- Result object, which will indicate the number of affected documents (1 or 0, if none)
-
addOrReplaceOne
Result addOrReplaceOne(String id, DbDoc doc)
Adds the document to the collection. The following algorithm applies:- 参数:
id- the document id of the document to be replaceddoc- the new document, which may contain expressions. If doc contains an _id value and it does not match the given id then the error will be thrown.- 返回:
- Result object, which will indicate the number of affected documents (0 - if none, 1 - if added, 2 - if replaced)
-
addOrReplaceOne
Result addOrReplaceOne(String id, String jsonString)
Adds the document to the collection. The following algorithm applies:- 参数:
id- the document id of the document to be replacedjsonString- the new document, given as JSON string, which may contain expressions. If doc contains an _id value and it does not match the given id then the error will be thrown.- 返回:
- Result object, which will indicate the number of affected documents (0 - if none, 1 - if added, 2 - if replaced)
-
getOne
DbDoc getOne(String id)
Return the document with the given id.- 参数:
id- the document id of the document to be retrieved- 返回:
- the document, or NULL if no match found
-
-