美文网首页
06-web3j的ABI

06-web3j的ABI

作者: jection | 来源:发表于2018-06-26 11:00 被阅读0次
    
    文章是本人学习过程翻译,原文来自官方文档:https://web3j.readthedocs.io/en/latest/#
    
    官网:https://web3j.io/
    
    官方GitHub:https://github.com/web3j/web3j
    
    官方demo:https://github.com/web3j/web3j/tree/master/integration-tests
    
    文档版本v3.4.0。
    
    
    

    Application Binary Interface

    ABI是一种数据编码方案用于处理Ethereum智能合约。ABI中定义的类型和solidity是一样的。比如uint8…,uint256,int8,…,int256,bool,string,等等。
    web3j的ABI模块提供了所有ABI规范支持,包括:

    • 所有ABI类型的Java实现,包括转换本地Java类型
    • function和event支持
    • 丰富的单元测试

    类型映射(Type mappings)

    web3j提供的本地java类型与ABI转换如下:

    • boolean -> bool
    • BigInteger -> uint/int
    • byte[] -> bytes
    • String -> string and address types
    • List<> -> dynamic/static array

    深入介绍

    请参阅各种编码/解码的ABI单元测试的例子。
    一个完整的ABI规范在Solidity documentation

    依赖(Dependencies)

    这是一个非常轻量级的模块,只依赖于 Bouncy Castle第三方库用来加密hash(Spongy Castle在Android上)。其他希望与Ethereum ABI交互(JVM或Android)的项目会选择使用这个模块而不是编写自己的实现。

    相关文章

      网友评论

          本文标题:06-web3j的ABI

          本文链接:https://www.haomeiwen.com/subject/rlhdyftx.html