http://www.admarmetal.com

使用Java与大发3d智能合约进行交互

        in the contract's storage).

利用Java与大发3d智能合约举办交互

挪用要领

在节制台中,您将看到项目已乐成运行,可是虽然还没有任何回响。因此,您将看到“terminated”动静:

amount, fee, "", "", "addCustomer", new String[]{"1000000", 


        self.data.customers[params.idFrom].balance = 

利用Java与大发3d智能合约举办交互

文章方针

 // Calls the contract entry point.
 System.out.println("OpHash : " + opHash);
结论
        # Updates a customer's balance.


这是我们从Java应用措施挪用生成的Micheline名目标参数。陈设时,Tezos智能合约以Michelson 语言编写,它们期望以这种名目发送的输入参数。利用TezosJ库的长处之一是它可以及时生成Micheline名目标参数,而您不必担忧它是如何完成的。


    @sp.entry_point
    @sp.add_test(name = "Customers")

选择库文件,然后单击“应用并封锁”按钮:

利用Java与大发3d智能合约举办交互

我们将利用Tezos大发3d。为了使我们的Java代码与现有的、陈设的智能条约交互,我们需要来自TezosRio的TeZOSJ库。 该库有两个版本,一个是专门为Android应用措施开拓编写的版本(TezosJ_SDK),另一个是为利用Eclipse IDE编写的通用Java应用措施(TezosJ_plainJava)编写的,我们将在这里利用。 无需下载整个库源代码。 仅v1.1.0 JAR文件就足够了。 作为我们的开拓IDE,Eclipse将是首选。
    @sp.entry_point

        sp.set_type(params.balance, sp.TMutez)
# Imports the SmartPy library.
回到Eclipse,单击项目名称,然后利用CTRL + V粘贴。
        # Removes a customer through its id number.

        # Defines a customer record, so we can add to a Map.

更进一步
"123456789","Bob","98769985"});
        sp.set_type(params.name, sp.TString)

利用Java与大发3d智能合约举办交互

        # Adds the new customer record to a Map (that will reside 
      self.data.customers[params.idTo].balance + params.amount
# Creates the test scenario, to simulate a contract call in 
        # Inserts the customers, calling the contract's 



此刻我们将添加TezosJ库JAR文件。 转到Tezos.Rio github存储库并下载文件tezosj-sdk-plain-java-1.1.0.jar
首先,我们需要通知TezosJ我们将利用TezosTestNet(智能合约实际宣布的处所)。我们还需要设定生意业务金额和用度。这是用下面的Java代码完成的:

参数:
在文件欣赏器上,复制tezosj-sdk-plain-java-1.1.0.jar文件(CTRL + C)。

果将是曾经发送到智能合约地点的所有操纵的列表以及智能合约存储的当前状态。您将在此处查抄从Java通报过来的参数,以及它们是否正确生存在存储器中:

    # Defines the transfer entry point.
        sp.set_type(params.idFrom, sp.TString)

下一步是选择项目范例:选择Gradle Project:


利用Java与大发3d智能合约举办交互


amount, fee, "", "", "addCustomer", new String[]{
new String[]{“1000000”, “98765”,”Bob”,”99876787"});
该文件将显示为已添加到项目布局中:
开拓人员利用大发3d智能合约从未如此简朴。出格是Tezos,提供了很多精彩的东西和无数的计较机语言库,可促进与大大都系统的集成。TezosJ库通过提供一种易于利用的callContractEntryPoint要领举办创新,该要领可以即时建设Micheline名目标参数。它具有Java开拓人员在与大发3d无缝交互的应用措施开拓中发达成长所需的所有东西。

此刻我们拥有从Java挪用条约所需的一切。首先我们将利用智能合约的“ addCustomer”进口点添加新客户。让我们思量客户的名字“Bob”,他的ID将是“ 98765”,电话号码是“ 99876787”。 Bob的余额为10英镑(1000万个mutez)。 因此,我们的智能合约挪用呼吁将如下所示:

此刻我们已经筹备好一切,让我们首先构建一个Tezos钱包:

 String opHash = (String) jsonObject.get("result");

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。