一、撰寫示例智能合約
智能合約:
它是一段代碼和資料的集合,可以部署以太坊網路上運行,類似于Java程式,Java程式通過Java虛擬機(JVM)將代碼解釋位元組進行執行,以太坊的智能合約通過以太坊虛擬機(EVM)解釋成位元組碼進行執行,同時智能合約有自己的賬戶,在時間或事件的驅動下能自動執行一些功能,如可以在相互之間傳遞資訊,修改區塊鏈的狀態比如賬戶資訊等,以太坊的智能合約是圖靈完備,就是可以完全模擬一臺計算機所能做的所有事情,位元幣不是圖靈完備,比如回圈指令位元幣就無法執行,
1.撰寫名稱為SimpleStorage的智能合約
pragma solidity ^0.4.18;
contract SimpleStorage { //智能合約名稱
uint storedData;
function set(uint x)public { //定義了一個set方法
storedData= x;
}
function get() public constant returns (uint) {
return storedData; //定義了一個get方法
}
}
二、部署智能合約
1.按照下方圖片操作,進入智能合約部署頁面

2.智能合約部署程序,詳細如下圖,完成之后點擊左下角的 DEPLOY 按鈕

3.第二步完成,將出現以下界面,輸入我們選擇的賬戶的密碼,點擊SEND TRANSACTION

4.此時geth客戶端需要啟動挖礦,(如果之前啟動,則不需要重新啟動)進行智能合約的創建,在挖出12個塊后,智能合約就創建完成了

三、運行智能合約
經過上述的操作,我們已經完成了一個智能合約的部署程序,接下來我們看看如何運行智能合約,
(一)在本節點運行智能合約
1. 下圖中為已部署的智能合約

2.點擊智能合約,進入智能合約的,試驗剛才部署的智能合約,按照第二張圖片的操作,進行試驗


其他的智能合約部署與運行與上述一致,無非就是函式較多,引數多,
(二)在其他節點運行智能合約
如果在其他節點運行智能合約,我們就需要將智能合約的地址和介面復制下來,在其他節點上進行相應的操作,詳細如下:
1.需要在智能合約上進行復制內容

按照以下操作:

2.將前邊復制的內容按照圖片所示粘貼,完成后,就可以發現這個智能合約在該節點運行了

四、總結
今天我們完成了在以太坊私有鏈上部署和運行第一個智能合約,這個是官方給的一個示例,我們通過該例子,了解了區塊鏈智能合約的部署運行程序,之后,將深入的學習如何自己撰寫智能合約,
如果需要了解部署智能合約的作業原理,可以參考以下文章:
https://blog.csdn.net/sportshark/article/details/52249607
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/293788.html
標籤:區塊鏈
