当前位置: 首页 > 知识库问答 >
问题:

Corda上的数据存储

谢高峯
2023-03-14

我正在处理一个用例。要求是我需要创建订单。订单有一些客户参数。订单可以多次修改。最初,我想在以太坊中实现它。因此,我考虑从UI中捕获客户详细信息,并将其存储在智能合约中。然而,问题是一旦部署了合同,我就不能更改它,因为它是不可变的。这个缺点使我无法使用以太坊。考虑到Corda,我可以将客户数据存储为单个记录,并对其进行修改,以便将修改存储在我们可以查询的分类帐中吗。例如,我想存储客户ID、客户名称、客户采购订单号、订单类型和订单状态。

如何在Corda数据模型中执行此操作?这些数据是否会根据智能合约上编码的规则进行修改?可以查询数据吗?

共有1个答案

鲍国兴
2023-03-14

是的。

在Corda中,您可以使用状态存储信息。在您的情况下,您可以创建一个CustomerDataState类。然后在分类账上创建此类的实例,以代表您的各种客户。

然后可以使用事务更新此数据。但并非所有交易都是允许的。哪些交易记录有效取决于关联的客户数据合同中的规则。客户数据合同将是无状态的,只是为了说明客户数据状态如何随着时间的推移而发展。

然后,您可以使用SQL风格的语法轻松地从节点的保管库或事务存储中查询这些数据。

 类似资料:
  • 当在CORDA的配置文件中配置JDBC数据源时,是否可以使用数据库连接池,例如Java应用程序服务器上使用的Apache Commons连接池?既然CORDA本身可能为节点提供对象池,这是否会提供任何优势?

  • 无论我找到什么链接,他们都在谈论更改web.xml或添加AppCong,我不确定在Corda示例项目中如何做到这一点。 小队请帮忙。

  • 我按照本教程使用aws Corda AMI在aws上部署节点。 但在注册步骤之后, (< code > Java-jar corda . jar initial-registration-p PASSWORD _ FOR _ NETWORK _ ROOT _ TRUSTORE ), 它抛出此错误: [错误]10:14:31 0000[主]内部。NodeStartupLogging.invoke -

  • Corda 是一个分布式账本平台,用于记录,管理和自动化业务合作伙伴之间的法律协议。由世界上最大的金融机构设计,并且在多个行业都有应用。它针对分散式应用程序面临的隐私和可扩展性挑战提供了独特的响应。 特点: 用Java和其他JVM语言编写的智能合约 流程框架来管理参与者之间的沟通和协商 点对点网络节点 “公证”基础设施来验证交易的唯一性和排序 启用称为CorDapps的分布式应用程序的开发和部署 用Kotlin编写,基于JVM

  • 问题内容: 与这个有关debian的问题类似。我有非定制的安装,我想知道数据实际存储在哪里。链接问题未在接受的答案中指出。 问题答案: 在Mac上,数据存储在elasticsearch安装文件夹的子文件夹中。 请参阅目录布局以进行常规安装,即既没有Linux也没有Windows。

  • 我对Spring数据JPA(Hibernate、PostgreSQL和jdbc)有一个问题。我有两个实体,Texte和Annotation,还有两个存储库,TexteRepository和AnnotationRepository,它们扩展了crudepository。注释与文本具有多对一关系。在控制器中,我会这样做: 执行此操作时,我遇到了一个ConstraintViolationExceptio