参考代码:
git clone https://github.com/corda/cordapp-tutorial
git checkout -b release-M14.0
我对Corda中的数据流动有点困惑。我有一些与数据库相关的查询:
在哪里可以看到表格中的数据?当我进行现金交易时,我可以在我的H2数据库客户端的AULT_CASH_BALANCES
表中看到它,但除了现金,我无法看到我的其他交易的任何细节,即,如果我保存字符串然后我我无法获取信息,我只获得了该信息的交易ID。
是否可以获得整个数据流图?
答案 0 :(得分:1)
您可以通过实现QueryableState接口来定义每个状态类型在节点中的存储方式。实现QueryableState的每个状态类型都有自己的自定义数据库表。
有关示例,请参阅https://github.com/corda/cordapp-tutorial/blob/master/kotlin-source/src/main/kotlin/com/example/state/IOUState.kt。由于IOU状态实现了一个模式(在CorDapp的Kotlin版本中),你可以看到每个IOU状态的H2接口的发送者,接收者和值。
在当前实现中,节点的数据存储在已部署节点的persistence.mv.db文件中。每次运行gradlew deployNodes时都会擦除它。但是,如果您只是通过运行gradlew jar创建更新的CorDapp jar,则可以将更新的CorDapp jar从build / libs复制到每个节点的plugins文件夹中,该节点将使用新的插件。