区块链开发(三)以太坊智能合约部署和使用

Remix是以太坊提供的一个开发Solidity智能合约的网络版开发软件。合约的开发者在Remix里提供的JavaScript虚拟机上开发,调试好合约后,可以发布到以太坊,或者任何支持Solidity智能合约的区块链上。
首先在Remix 新建一个Message.sol

pragma solidity^0.4.20;
contract Message{
    string msg;
    function setMsg(string _msg) public {
        msg=_msg;
    }
    function getMsg() public view returns(string){
        return msg;
    }
}

Message.sol

然后进入此前创建的私有链目录

cuiran@cuiran:~/ethereum$     cd data0/
cuiran@cuiran:~/ethereum/data0$     ls
geth     history  keystore log.txt
cuiran@cuiran:~/ethereum/data0$     geth --datadir . --networkid 4224 --rpc --rpcport 8545 --port 30303 --rpccorsdomain="*" -rpcapi eth,web3,personal,net console 2> log.txt
Welcome to the Geth JavaScript console!

instance: Geth/v1.7.3-stable/darwin-amd64/go1.9.3
coinbase: 0xb258e5b1b30215b112881c13f22ab5a47a624b81
at block: 79 (Mon, 09 Jul 2018 16:20:57 CST)
 datadir: /Users/cuiran/ethereum/data0
 modules: admin:1.0 debug:1.0 eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0

> eth.accounts
["0xb258e5b1b30215b112881c13f22ab5a47a624b81", "0xf417953e3b736a68cf7c60f89f459a28d25880da"]
> personal.unlockAccount("0xb258e5b1b30215b112881c13f22ab5a47a624b81");//解锁账号
Unlock account 0xb258e5b1b30215b112881c13f22ab5a47a624b81
Passphrase:
> eth.sendTransaction({from :user1,to:user2,value:web3.toWei(3,"ether")})
"0x92251d069cf4e6f740c5315003819bb021e533e39bcd563eae8cb091363a4e26"
> miner.start();
null
> miner.stop();
true
>

然后在remix里面deploy发布
就会出现
测试
在setMsg里面输入”hello world”
点击getMsg 会返回hello world

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以太坊智能合约是基于以太坊区块链技术的智能合约,可以实现自动化的合同执行和全球范围内的去心化应用程序开发。在以太坊上编写智能合约需要使用Solidity语言。 以下是以太坊智能合约编程的菜鸟教程: 1. 安装Solidity编译器 Solidity是以太坊上最常用的智能合约编程语言,需要安装Solidity编译器才能编写和部署Solidity智能合约。可以从官网站或GitHub上下载Solidity编译器。 2. 编写智能合约 使用Solidity编写智能合约需要掌握Solidity语言的语法和关键字。可以在Remix集成开发环境编写Solidity智能合约,也可以在本地使用Solidity编译器进行编写。 以下是一个简单的Solidity智能合约示例: ``` pragma solidity ^0.8.0; contract MyContract { uint256 public myNumber; function setNumber(uint256 _number) public { myNumber = _number; } } ``` 这个智能合约定义了一个名为MyContract的合约,包含一个名为myNumber的公共变量和一个名为setNumber的公共函数。setNumber函数将传入的参数设置为myNumber的值。 3. 编译和部署智能合约 编写完智能合约后,需要使用Solidity编译器将其编译成字节码。可以使用Remix集成开发环境或本地Solidity编译器进行编译。 部署智能合约需要连接以太坊网络,并使用以太坊钱包或其他工具进行部署部署智能合约时需要支付以太币作为燃料费。 4. 调用智能合约部署智能合约后,可以使用以太坊钱包或其他工具调用智能合约法。使用Solidity编写的智能合约法可以通过Web3.js或其他以太坊API进行调用。 以上是以太坊智能合约编程的基本流程,希望能对初学者有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cuiran

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值