进出口MATLAB对象的使用MongoDB而且MongoDBc++接口
这个例子展示了如何从MATLAB中导出对象®工作区到MongoDB®使用MongoDB c++接口。导出序列化MongoDB中的对象。然后,该示例演示如何将对象导入MATLAB工作区。导入将对象反序列化并在MATLAB中重新创建它们以用于方法执行。在导出和导入之后,示例显示了如何删除集合。
在本例中,对象属于TensileData
类。该类是MATLAB中的一个示例类。用于创建对象的数据是示例数据。详细信息请参见用类表示结构化数据.要运行本例中的代码,需要在当前文件夹中定义类。
样本数据表示拉伸应力和应变测量值,可用于计算各种材料的弹性模量。简单来说,应力是施加在材料上的力,应变是产生的变形。应力与应变的比率决定了材料的一种特性。
创建对象
创建TensileData
对象tdcs
适用于碳钢等材料tds
适用于不锈钢材料。
tdcs = TensileData(碳钢的,1,...[2e4 4e4 6e4 8e4],[.]12.20 . 31.40]);tdss = TensileData(“不锈钢”,1,...[2e4 4e4 6e4 8e4],[.]06 .10 .16 .20]);
连接到MongoDBc++接口
创建到数据库的MongoDB连接mongotest
使用MongoDB c++接口。这里是数据库服务器dbtb01
使用端口号承载此数据库27017
.
服务器=“dbtb01”;端口= 27017;dbname =“mongotest”;Conn = mongoc(服务器,端口,dbname)
conn =连接属性:数据库:"mongotest"用户名:""服务器:"dbtb01"端口:27017 CollectionNames: [13×1 string]
康涅狄格州
是蒙戈
包含MongoDB连接的对象。对象属性包含有关连接和数据库的信息。
数据库名称为
mongotest
.用户名为空。
数据库服务器为
dbtb01
.端口号为
27017
.这个数据库包含13个文档集合。
检查MongoDB连接。
isopen(康涅狄格州)
Ans =逻辑1
数据库连接成功,因为isopen
函数返回1
.否则,数据库连接关闭。
中创建集合MongoDB
创建TensileData
收集使用MongoDB连接。
收集=“TensileData”;createCollection(康涅狄格州、收集)
将对象导出到MongoDB
导出TensileData
对象放入集合中。的插入
函数将TensileData
对象转换为json样式的结构。这个三
而且被忽略的
包含导出到集合中的对象数量。
NTDCS =插入(conn,collection,tdcs);NTDSS = insert(conn,collection,tdss);
将对象导入MATLAB工作空间
导入TensileData
对象导入MATLAB工作区。的找到
函数反序列化TensileData
对象的文档
结构数组。
Documents = find(conn,collection);
在MATLAB工作区中重新创建对象。
tdcs = TensileData(documents(1).Material,documents(1).SampleNumber,...(1) .Stress文档,文档(1).Strain);tdss = TensileData(documents(2).Material,documents(2).SampleNumber,...(2) .Stress文档,文档(2).Strain);
可以在对象出现在MATLAB工作区后执行它们的方法。例如,计算弹性模量。
删除文档和删除收集
从集合中删除所有文档。n
包含从集合中移除的文档数量。
N = remove(conn,collection,“{}”)
N = 2
删除集合。
dropCollection(康涅狄格州、收集)
关闭MongoDBc++接口连接
关上(康涅狄格州)
另请参阅
mongoc
|isopen
|找到
|createCollection
|dropCollection
|插入
|删除
|关闭