1 Java Web3J 概述
Web3j是一个轻量级,Reactive(响应式),类型安全的Java库,用于与Ethereum网络上的客户端(节点)集成,这允许您使用Ethereum块链,而不需要为平台编写自己的集成代码的额外开销。
1.1 Web3J 提供的功能
-
通过HTTP和IPC 完成Ethereum的JSON-RPC客户端API的实现
-
Ethereum钱包支持
-
使用过滤器的函数式编程功能的API
-
自动生成Java智能合约包装器,以创建、部署、处理和调用来自本地Java代码的智能合约
-
支持Parity的 个人和Geth的 个人客户端API
-
支持Infura,所以您不必自己运行一个Ethereum客户端
-
综合整合测试展示了上述一些场景
-
命令行工具
1.2 Web3J的依赖的库(中间件)
-
RxJava函数式编程的API中间件
-
Apache HTTP Client中间件
-
Jackson Core 用于快速JSON序列化/反序列化中间件
-
Bouncy Castle加密解密和 Java Scrypt加密中间件
-
生成智能合约java包装器类的java源代码(.java)的JavaPoet中间件
-
Java的UNIX域套接字的*nix