主要内容

进出口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++接口连接

关上(康涅狄格州)

另请参阅

|||||||

外部网站