交易管理器

优质
小牛编辑
128浏览
2023-12-01

交易管理器

web3j提供了一个交易管理器TransactionManager来控制你连接到以太坊客户端的方式。默认机制使用web3j的RawTransactionManager,它与以太坊钱包文件一起工作,在提交到网络之前离线地签署交易。

但是,你可能希望修改交易管理,也可以将其传递给智能合约部署和构建方法deploy,而不是凭据对象,即:

YourSmartContract contract = YourSmartContract.deploy(
        <web3j>, <transactionManager>, GAS_PRICE, GAS_LIMIT,
        <param1>, ..., <paramN>).send();

除了RawTransactionManager之外,web3j还提供了一个客户端交易管理器ClientTransactionManager,它将你的交易签署的责任传递给你正在连接的以太坊客户端。

还有一个ReadonlyTransactionManager,用于只从智能合约中查询数据,而不与它进行交易。