web3j(
org.web3j
)是Java版本的
以太坊JSON RPC接口協定封裝實作,如果需要将你的Java應用或安卓應用接入以太坊,或者希望用java開發一個錢包應用,那麼用web3j就對了。
web3j的功能相當完整,除了以太坊JSON RPC的完整封裝,它還包括完備的賬戶管理及交易管理實作。
web3j的功能組織在不同的包中,下圖展示了
org.web3j
的主要包以及其間的依賴關系:

core:JSON RPC協定的封裝主要由包
org.web3j.core
實作,它依賴于
org.web3j.crypto
包提供
的密鑰與簽名相關的功能,以及
org.web3j.abi
包提供的java/solidity類型映射支援。
console:
org.web3j.console
包實作了一個可以單獨運作的指令行程式
web3j
,我們将使用它來
生成solidity合約的Java封裝類,其中,
org.web3j.codegen
包實作了從abi到java封裝類的代碼生成。
節點相關:
org.web3j.infura
包封裝了對Infura公共節點旳http通路服務接口,
org.web3j.geth
和
org.web3j.parity
則分别封裝了這兩種常用以太坊節點軟體旳管理接口。
web3j最大的問題是文檔比較差。如果你希望快速掌握如何使用web3j開發支援以太坊的java應用或安卓應用,可以通路我們的線上互動課程:
web3j教程,這是最快的學習路徑。