当前位置:   article > 正文

区块链学习之Web3j入门(一)

web3j

1.开启ganache-cli服务

ganache-cli 是以太坊节点仿真器软件 ganache 的命令行版本,可以方便开发者快速进行以太坊DApp的开发与测试,开启服务后如下图所示(初始有十个账户信息):
ganache-cli运行在8545端口监听http请求ganache-cli运行在8545端口监听http请求,我们将使用web3j将JSON RPC 调用请求使用http协议发送到节点的8545端口。

2.用maven中导入相关依赖

<dependencies>
<!--引入单元测试-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
 <!--导入web3j核心jar包-->
      <dependency>
        <groupId>org.web3j</groupId>
        <artifactId>core</artifactId>
        <version>4.3.0</version>
      </dependency>
      <!--引入日志组件-->
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-core</artifactId>
      <version>1.1.7</version>
    </dependency>
    <dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.1.7</version>
    </dependency>
  </dependencies>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

3.主函数

接口 Web3j 声明了以太坊 JSON RPC 相关的全部接口,该接口提供了静态方法 build()来返回一个该接口实现类JsonRpc2_0Web3j 的实例对象:
  • 1

org.example.App

package org.example;

import org.web3j.protocol.Web3j;
import org.web3j.protocol.core.Request;
import org.web3j.protocol.core.methods.response.Web3ClientVersion;
import org.web3j.protocol.http.HttpService;

import java.io.IOException;

/**
* Hello Web3j!
*
*/
public class App 
{
  public static void main( String[] args ) throws IOException {
      Web3j web3j = Web3j.build(new HttpService("http://localhost:8545"));//创建一个 Web3j 实例对象,该对象将后续的 RPC 调用通过 HTTP 发送到本机运
行的节点
      Request<?, Web3ClientVersion> request = web3j.web3ClientVersion(); //构造请求对象
      Web3ClientVersion response = request.send();//发送请求对象并获取响应对象
      String version = response.getWeb3ClientVersion();//获取版本信息
      System.out.println("Client Version:"+version);//输出版本信息
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
String clientVersion = web3j.web3ClientVersion().send().getWeb3ClientVersion();//链式编程实现
  • 1

4.运行结果

控制台上打印出了Client Version:
运行结果

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/574619
推荐阅读
相关标签
  

闽ICP备14008679号