手把手教你区块链java开发智能合约nft-第一篇(代码片段)

悬弧 悬弧     2022-12-07     798

关键词:

文章目录

手把手教你区块链java开发智能合约nft-第一篇

刚接触区块链开发,使用java开发,真的是太难了,自己一步步摸索,从新手小白一路碰壁,动不动就报错,去网上搜索对应错误,还真什么都搜索不到,摸索了三四个月,今天终于有了一些进展,今天开始分享出来,希望能帮助到需要的朋友

我作为一个java后端的程序员,不会写智能合约,但是可以找对应会的人写,或者自己网上找资料自己写。这里只介绍怎么将智能合约转为java代码

如何将智能合约转成java代码?
我了解的有好2两种方式,具体可以参考:

  1. 区块链智能合约转为java代码
  2. web3j 开源框架代码执行转java代码

我这里主要介绍第二种方式

安装基础环境

  1. nodejs
  2. truffle #编译智能合约要使用

基础环境安装不多介绍,具体点击查看安装 nodejstruffle

编写智能合约

  1. 创建文件夹
mkdir MetaCoin
cd MetaCoin
  1. 下载(“unbox”) MetaCoin box
truffle unbox metacoin

下载完成后,会看到几个文件夹
contracts/: Solidity contracts 目录,智能合约代码就在这里编写
migrations/: Directory for scriptable deployment files
test/: Directory for test files for testing your application and contracts 测试智能合约的目录,主要写测试用例
truffle.js: Truffle configuration file ,配置文件

  1. 编译智能合约
    自己编写完智能合约后,执行以下命令进行编译
truffle compile

编译完成后,会生成build目录,目录下会生成.json文件,这些json文件就是用来生成java代码的文件

使用web3j 开源框架生成java代码

  1. 下载源码
git clone https://github.com/web3j/web3j.git
  1. idea打开web3j

    idea打开后,会自动下载相关依赖包,下载完成,就可以运行相关的代码,生成java代码了

  2. 找到项目codegen
    找到项目并定位到具体类:org.web3j.codegen.TruffleJsonFunctionWrapperGenerator
    先运行一下main方法,之后在去配置运行参数

4.配置参数

  • 点击编辑配置
  • 配置参数

    参数格式如下:
org.web3j.codegen.TruffleJsonFunctionWrapperGenerator /path/to/<truffle-smart-contract-output>.json -o /path/to/src/main/java -p com.your.organisation.name

第一个参数:指定编译后的智能合约对应json串位置
第二个参数:-o 指定输入java代码的位置
第三个参数:生成java代码的位置
第四个参数:-p 指定生成java代码的包名
第五个参数:生成java代码的包名

配置完参数之后,点击OK确认保存

  1. 运行TruffleJsonFunctionWrapperGenerator ,就可以将智能合约生成java代码了

区块链-智能合约工程师第一篇:某科技jd解读

文章目录智能合约工程师JD-某科技岗位职责:任职要求:加分项解读事项路线智能合约工程师JD-某科技智能合约工程师(P6-7)岗位职责:根据业务需求,设计、开发DAPP智能合约;分析智能合约代码漏洞,对合约代码进行审计。任... 查看详情

一学就会,手把手教你用go语言调用智能合约

参考技术A智能合约调用是实现一个DApp的关键,一个完整的DApp包括前端、后端、智能合约及区块链系统,智能合约的调用是连接区块链与前后端的关键。我们先来了解一下智能合约调用的基础原理。智能合约运行在以太坊节点的... 查看详情

flow区块链nft开发及部署教程cadence合约(代码片段)

Flow区块链是著名的加密猫团队特别针对NFT应用开发的新的公链,其目的是解决以太坊在NFT开发应用上存在的诸多问题,目前已经得到NBA、UFC等多个大牌厂商的支持。在这个教程中我们将学习如何创建Cadence智能合约并在Flo... 查看详情

10个最适合开发nft的区块链

鉴于当今区块链的多样性,选择最适合作为NFT活动基础的区块链变得越来越难。但是,在开发NFT或NFT平台之前,我们需要考虑某些标准,包括交易成本、智能合约功能、共识机制和交易速度等。用自己熟悉的语言... 查看详情

bsv资讯感应合约大幅推进bsv区块链上的nft和智能合约方案

...新发展情况。感应合约又有重大进展,目前可以在BSV区块链上实施简化的智能合约,能够安全且去中心化地对同质化和非同质化通证(NFT&#x 查看详情

web3+区块链学习计划

...om/read/cv18404166制定的web3学习计划是这样的:WEEK1:学习区块链的基础知识密码学基础区块链基础学习以太坊原理WEEK2:学习智能合约学习常见的智能合约标准,ERC20学习Solidity语言学习部署和开发一个简单的智能合约(codi... 查看详情

手把手教你发行代币

参考技术A目前,应用最广泛的代币(区块链货币)是在以太坊上发行的ERC20代币。ERC20可以看做是一个智能合约。这个智能合约能追踪谁拥有多少该代币,并包含一些代币转移函数。如果你写的代币智能合约符合ERC20的标准,你... 查看详情

solana区块链智能合约开发简要流程(代码片段)

Solana区块链智能合约开发简要流程Solana区块链是当今市值第5的区块链,已经有很多知名生态准备部署在Solana上。相比于类以太坊(EVM)区块链来讲,Solana上智能合约开发(叫Program)存在一定的门槛,... 查看详情

区块链技术开发智能合约与图像存储在外部存储器ipfs(interplanetaryfilesystem)

专栏:【区块链技术开发】前期文章:【区块链技术开发】十个比较流行的以太坊智能合约开发框架【区块链技术开发】剖析区块链Ganache模拟器工具及其智能合约部署区块链的查询方式【区块链技术开发】基于Web3.js以太坊网络... 查看详情

区块链软件开发区块链游戏开发nft游戏开发元宇宙游戏模板搭建

区块链软件开发区块链游戏开发NFT游戏开发元宇宙游戏模板搭建每个NFT游戏都有设计师,设计师是元宇宙的创造者、数字身份的数据中心和游戏资产的“中央银行”。去中心化游戏如果完全脱离任何集体治理,将会陷入... 查看详情

flow区块链门票nft开发实战含源码(代码片段)

...个教程中,我们将门票作为一种NFT资产,利用FLow区块链的Cadence智能合约来解决票务市场的主要痛点,例如防伪、中介手续费、二级市场混乱等问题。区块链开发教程链接:以太坊| 查看详情

solana区块链智能合约开发简要流程(代码片段)

Solana区块链智能合约开发简要流程Solana区块链是当今市值第5的区块链,已经有很多知名生态准备部署在Solana上。相比于类以太坊(EVM)区块链来讲,Solana上智能合约开发(叫Program)存在一定的门槛,... 查看详情

wax+phaser:nft游戏开发入门(代码片段)

WAX是eos兼容区块链,由于其交易速度快、免手续费、完善的智能合约支持等特性,特别适合区块链NFT游戏的开发。在这个教程中,我们将学习如何利用Phaser开发一个基于WAX区块链的NFT小游戏。如果你是PHP开发者,... 查看详情

学习区块链开发是学习go语言、hyperledgerfabric比较好、还是以太坊智能合约比较好或者公链开发?

刚接触区块链,之前自学了一些go语言、hyperledgerfabric,在就业方向看目前此方向比较少,由于初学,目前比较迷茫,不知是应该改学以太坊智能合约开发或者公链开发,还是继续学习fabric?Fabric区块链开发详解,本课程面向初... 查看详情

bsc/heco链手把手教你怎么一键发币,部署正常合约

以HECO链为例:接下来开始教学:第一步创建合约文件 第二步选择编译版本一定要一致 第三步设置参数不懂的可以问我 查看详情

手把手教你搭建facebook区块链libra的开发环境(代码片段)

     脸书在发布了区块链新应用Libra之后,又发布了Libra的编程语言Move,可能是刚刚发布笔者尝试在ubantu系统下安装Move语言的开发环境,可能是发布时间太短,笔者还是遇到了很多坑的。这里用博客记录一下相... 查看详情

波场区块链智能合约dapp交易系统开发需要了解那些?

...例、波场链系统开发设计平台、波场链系统开发搭建源码区块链智能合约系统开发简单地说就是: 一、智能合约,永不关网; 二、以波场进,以波场出; 三、100个波场即可参与; 四、日收益1%,动静结合3.1倍出局... 查看详情

区块链开发之solidity智能合约开发(代码片段)

在编写智能合约之前,需要有Solidity的开发环境,我将使用Remix来进行Solidity的学习,大家可以访问Remix在线Solidity集成开发环境其界面主要分三部分,左半本分是合约目录,可进行合约编译、发布右上部分是合... 查看详情