使用波场进行 转账、查询 java demo
otc、ctc。。。可用
1.转帐usdt
/** * 转账 * @param fromAddress 来源地址 * @param fromHexPrivateKey 来源密钥 * @param toAddress 对方地址 * @param amount 数量 * @return 区块链交易id */public static String transferUSDT(String fromAddress, String fromHexPrivateKey, String toAddress, BigInteger amount) {ApiWrapper client = getApiWrapper(fromHexPrivateKey);Function transfer =new Function("transfer",Arrays.asList(new Address(toAddress), new Uint256(amount)),Arrays.asList(new TypeReference<Bool>() {}));TransactionBuilder builder =client.triggerCall(fromAddress, TRC20_USDT_CONTRACT_ADDR, transfer);builder.setFeeLimit(50000000);Chain.Transaction transaction = client.signTransaction(builder.getTransaction());String txid = client.broadcastTransaction(transaction);client.close();return txid;}
2.转帐 trx
/** * 转账TRX * @param fromAddress 来源地址 * @param fromHexPrivateKey 来源 秘钥 * @param toAddress 目标地址 * @param amount 数量 * @return * @throws IllegalException */public static String transferTRX( String fromAddress, String fromHexPrivateKey, String toAddress, long amount)throws IllegalException {ApiWrapper client = getApiWrapper(fromHexPrivateKey);Response.TransactionExtention transactionExtention =client.transfer(fromAddress, toAddress, amount);Chain.Transaction transaction = client.signTransaction(transactionExtention);String txid = client.broadcastTransaction(transaction);client.close();return txid;}
3.查询交易状态
/** * 查询交易状态 * * @param txid * @return * @throws IllegalException */public String getTransactionStatusById(String txid) throws IllegalException {ApiWrapper client = getApiWrapper(tronServiceConfig.getHexPrivateKey());Chain.Transaction getTransaction = client.getTransactionById(txid);return getTransaction.getRet(0).getContractRet().name();}