<dependency> <groupId>org.web3j</groupId> <artifactId>core</artifactId> <version>4.8.7</version> </dependency> import org.web3j.protocol.Web3j; import org.web3j.protocol.core.RemoteCall; import org.web3j.protocol.core.methods.response.EthAccounts; import org.web3j.protocol.http.HttpService; import java.io.IOException; import java.util.List; public class EtherumConnectionExample { public static void main(String[] args) { String url = "https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID"; Web3j web3 = Web3j.build(new HttpService(url)); try { EthAccounts ethAccounts = web3.ethAccounts().send(); List<String> accounts = ethAccounts.getAccounts(); System.out.println(accounts); } catch (IOException e) { e.printStackTrace(); } } } import org.web3j.protocol.Web3j; import org.web3j.protocol.core.RemoteCall; import org.web3j.protocol.http.HttpService; import org.web3j.tx.Contract; import org.web3j.utils.Convert; import java.math.BigDecimal; import java.math.BigInteger; public class SmartContractExample { public static void main(String[] args) throws Exception { String url = "https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID"; Web3j web3 = Web3j.build(new HttpService(url)); String contractAddress = "0xYourContractAddress"; String privateKey = "0xYourPrivateKey"; String abi = "YourContractABI"; MyContract contract = MyContract.load(contractAddress, web3, Credentials.create(privateKey), Contract.GAS_PRICE, Contract.GAS_LIMIT); RemoteCall<BigInteger> result = contract.get(); BigInteger value = result.send(); System.out.println(value); BigDecimal newValue = BigDecimal.valueOf(100); RemoteCall<TransactionReceipt> transactionReceipt = contract.set(Convert.toWei(newValue, Convert.Unit.ETHER).toBigInteger()); TransactionReceipt receipt = transactionReceipt.send(); System.out.println(receipt); } }


上一篇:
下一篇:
切换中文