web3j简介
web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。
可以通过它进行以太坊区块链的开发,而无需为你的java应用平台编写集成代码。
快速启动
想要快速启动的话,有一个Web3j demo示例项目可用,演示了通过Web3j开发以太坊的许多核心特征,其中包括:
- 连接到以太网网络上的节点
- 加载一个以太坊钱包文件
- 将以太币从一个地址发送到另一个地址
- 向网络部署智能合约
- 从部署的智能合约中读取值
- 更新部署的智能合约中的值
- 查看由智能合约记录的事件
也有一个快速进入学习的交互式课程web3j教程可以尝试。
web3j入门
首先将最新版本的web3j安装到项目中。
Maven
Java 8:
<dependency>
<groupId>org.web3j</groupId>
<artifactId>core</artifactId>
<version>3.4.0</version>
</dependency>
Android:
<dependency>
<groupId>org.web3j</groupId>
<artifactId>core</artifactId>
<version>3.3.1-android</version>
</dependency>
Gradle
Java 8:
compile ('org.web3j:core:3.4.0')
Android:
compile ('org.web3j:core:3.3.1-android')
启动客户端
需要启动一个以太坊客户端,当然如果你已经启动了就不需要再次启动。
如果是geth的话这么启动:
$ geth --rpcapi personal,db,eth,net,web3 --rpc --rinkeby
如果是Parity启动:
$ parity