这里使用的是maven项目,第一步要引入web3j的包

引入pom

 <dependency><groupId>org.web3j</groupId><artifactId>core</artifactId><version>3.4.0</version></dependency>

基础转账

    public static void transfer() throws Exception {Web3j web3j = Web3j.build(new HttpService("infura节点链接"));BigInteger bigInteger = new BigInteger("钱包私钥", 16);ECKeyPair ecKeyPair = ECKeyPair.create(bigInteger);Credentials credentials = Credentials.create(ecKeyPair);TransactionReceipt transactionReceipt = Transfer.sendFunds(web3j, credentials, "目标地址", BigDecimal.valueOf(0.001), Convert.Unit.ETHER).send();System.out.println(transactionReceipt);}

Token转账

    public static void transferToken() throws Exception {Web3j web3j = Web3j.build(new HttpService("infura节点链接"));BigInteger bigInteger = new BigInteger("私钥", 16);ECKeyPair ecKeyPair = ECKeyPair.create(bigInteger);Credentials credentials = Credentials.create(ecKeyPair);String fromAddress = credentials.getAddress();EthGetTransactionCount ethGetTransactionCount = web3j.ethGetTransactionCount(fromAddress, DefaultBlockParameterName.LATEST).sendAsync().get();BigInteger nonce = ethGetTransactionCount.getTransactionCount();Address address = new Address("目标地址");Uint256 value = new Uint256(new BigInteger("数量 单位wei"));List<Type> parametersList = new ArrayList<>();parametersList.add(address);parametersList.add(value);List<TypeReference<?>> outList = new ArrayList<>();Function function = new Function("transfer", parametersList, outList);String encodedFunction = FunctionEncoder.encode(function);System.out.println( DefaultGasProvider.GAS_PRICE);System.out.println(DefaultGasProvider.GAS_LIMIT);RawTransaction rawTransaction = RawTransaction.createTransaction(nonce,  DefaultGasProvider.GAS_PRICE,new BigInteger("210000"), "合约地址", encodedFunction);byte[] signedMessage = TransactionEncoder.signMessage(rawTransaction, credentials);String hexValue = Numeric.toHexString(signedMessage);EthSendTransaction ethSendTransaction = web3j.ethSendRawTransaction(hexValue).sendAsync().get();Object transactionHash = ethSendTransaction.getTransactionHash();System.out.println(transactionHash.toString());}

参考文档

web3.js 中文文档
web3j 英文文档

笔者整理了常见的一些智能合约并进行分类。

Java使用Web3j进行基础和token转账相关推荐

  1. java token使用方式_使用 Java 和 web3j 进行 Token 开发[概述][译]

    学习使用 web3j 部署ERC20 以及与合约进行交互. > 题外话, 翻译这篇文章是因为看到 CSDN 公众号这篇[外行翻译](https://mp.weixin.qq.com/s/Xu6c ...

  2. JAVA使用web3j开发以太坊实战案例

    JAVA使用web3j开发以太坊实战案例 必读 1.前言 2.基础(必看) 3.web3j引入 4.创建账户(离线创建) 5.geth节点搭建.基本使用及一般问题 6.常量类 后面内容都要用到(必备! ...

  3. [Java面试三]JavaWeb基础知识总结.

    [Java面试三]JavaWeb基础知识总结. 1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Int ...

  4. [JAVA EE] JPA技术基础:完成数据列表的删除

    接上一篇:[JAVA EE] JPA技术基础:完成数据列表显示 本章完成数据列表的删除 修改 UserController.java package com.example.demo.controll ...

  5. JAVA并发之多线程基础(2)

    除了我们经常用的synchronized关键字(结合Object的wait()和notify()使用)之外,还有对应的上篇文章讲到的方法JAVA并发之多线程基础(1)之外,我们日常中使用到最多的也就是 ...

  6. 第90节:Java中的Linux基础

    第90节:Java中的Linux基础 linux是装载虚拟机上面的: JDK依赖包: yum install glibc.i686MYSQL依赖包: yum -y install libaio.so. ...

  7. JAVA并发之多线程基础(5)

    上面介绍了并发编程中的栅栏等JAVA并发之多线程基础(4) .通过唯一的一个终点线来帮助确定线程是多晚开始执行下一次操作. LockSupport 提供了一个比较底层的线程挂起操作.有点类似于susp ...

  8. Java程序设计语言(基础篇)机械工业出版社 原属第10版

    链接:https://pan.baidu.com/s/1txoB3sk0SdT1u8RpS2x-Kg  提取码:rxkd  Java程序设计语言(基础篇)机械工业出版社 原属第10版 外加一本Java ...

  9. java.util.logging.Logger基础教程

    java.util.logging.Logger基础教程 @(JAVA)[java] 从JDK1.4开始即引入与日志相关的类java.util.logging.Logger,但由于Log4J的存在,一 ...

最新文章

  1. 发现了一个很好的做excel、ppt 水晶易表、spss的好网站
  2. 最大子序列求和_最大子序列和问题
  3. python getopt
  4. xampp 无法启动mysql
  5. [react] contextType是什么?它有什么用?
  6. 函数式编程语言天生就慢吗?
  7. 3-JAVA中的JSON操作
  8. sql modify 会丢失数据么_为什么U盘的数据会丢失?找对方法,轻松应对
  9. a标签download属性无效_使用这些 CSS 属性选择器来提高前端开发效率
  10. opencv中的Mat、CvMat以及IplImage介绍以及三者之间的转换
  11. HTTP 代理服务器技术选型之旅
  12. WA47电子管麦克风
  13. Spring——自动装配
  14. Android集成高德地图实现自定义Marker
  15. 阴阳师手游服务器维护,12月30日阴阳师服务器维护更新公告
  16. unity4和unity5区别
  17. LTE 系统信息SI
  18. FMU主板程序更新说明
  19. html css 清除 button 选中时的边框样式 CSS outline属性
  20. php curl couldnt connect to host,linux curl命令:curl: (7) couldn't connect to host ?

热门文章

  1. java 行 javac不行_javac可以java不行
  2. Android Theme 主题里的几个设计颜色的属性
  3. 【数据库课程】研讨04
  4. Responsive Design响应式网站设计心得笔记
  5. OJ题之OOP身份证扩展(类构造与析构)
  6. C++指针详解(指针初始化与回收,常量与指针,引用与指针)
  7. Linux中Apache安装与配置
  8. w5300在ucosIII的移植
  9. 智汀云盘-开发指南android端:授权登录
  10. word用了mathType导出PDF时出现\mergeformat