检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在CloudIDE上创建一个空的Java工程,如图1所示。 图1 CloudIDE上创建一个空的Java工程 下载Java SDK示例源码,获取方法:登录区块链服务管理控制台,进入“应用案例”,在“Java示例Demo-Java SDK Demo”下方,单击“App_Java_Src_Demo”中Java项目源码的“下载”按钮。
Java SDK Demo相关使用问题 区块链应用端使用Fabric开源版本的java SDK还是使用华为的SDK? 答:需要使用华为Java Demo中提供的SDK。 区块链应用端对接Fabric 2.0版本也使用Java Demo中自带的SDK 1.4.1版本吗? 答:是的。
Java语言链代码开发 链代码结构 链代码相关的API 链代码示例 链代码调测 父主题: 链代码开发
Gateway Java Demo 本节提供一个基于Fabric Gateway Java的Demo,Fabric Gateway Java对Java SDK进行了封装,简化了代码量,帮助用户开发自己的Java客户端应用程序。 本Demo仅适用于Hyperledger Fabric增强版的区块链实例。
链代码调测 对链代码进行调测,主要是使用MockStub进行单元测试。本章中测试的链代码获取方法:登录区块链服务管理控制台,进入“应用案例”,单击“Java示例Demo-Java SDK Demo”中“Chaincode_Java_Local_Demo”的“下载”按钮。 添加依赖
及事务处理等。 交易信息获取API:获取提交的交易信息的相关API。 其他API:其他的API,包括事件设置、调用其他链代码操作。 父主题: Java语言链代码开发
链代码示例 如下是一个读写数据的链代码示例,您也可以参考Fabric官方示例中其他链代码。 新建Java项目时,您可以选择新建maven或者gradle项目,以导入依赖包。本示例以gradle项目为例。 /* 导入此段代码到项目的build.gradle前,请删除或注释build
链代码结构 本章以Java语言为例来介绍。链代码即一个Java项目,创建好文件后进行函数开发等操作。 约束与限制 Java链代码仅支持Fabric 2.2及以上版本。 Java链代码仅适用于Fabric架构版本的区块链实例。 链代码接口 链代码启动必须通过调用shim包中的start方法。实际开发中,
Java SDK Java SDK升级过程中只需修改pom.xml中SDK对应的版本号即可,详细见对应版本的使用配置。 java SDK需要在项目pom文件中配置华为镜像仓。 <repositories> <repository> <id>maven-proxy</id>
开发前准备 链代码(Chaincode)又称智能合约,是用Go、Java或Node.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。基于区块链特点,智能合约的运行结果是可信的,其结果是无法被伪造和篡改的。
少量业务需要的代码和查询功能代码即可完成智能合约的制作。通过绘制页面可实时验证BPMN的有效性,验证无误后单击构建,生成智能合约。 智能合约部署 Package Management界面用于智能合约的管理,用户登录业务管理页面后跳转到该界面,可查看和管理已生成的智能合约。通过对生
JAVA合约开发 SDK配置 SDK接口 合约结构 合约示例 合约安装 父主题: 合约开发
链代码开发 开发前准备 开发规范 Go语言链代码开发 Java语言链代码开发 父主题: Hyperledger Fabric增强版管理
链代码示例 交易链码是用户实现其业务逻辑的链码,这里给出的示例代码Transaction Chaincode完成用户间的转账操作。在转账数据的验证过程中使用同态加密库对密文交易数据进行合法性校验,确保没有非法操作。示例中实现了余额初始化,余额查询,转账交易三个功能函数,具体功能实现参考如下。
手动选择组织&Peer节点。 链代码语言 支持Golang,Nodejs,Java三种类型。 链代码文件 添加链代码文件。 链代码描述 自定义描述信息。 代码安全检查 链代码语言选择Golang,该功能才会显示。选择是否开启代码安全检查。 单击“安装”,完成链代码安装。 单击链代码名称前,展开链代码详细信息。
调用链代码 前提条件 已安装Java JDK开发环境。JDK需要安装1.8版本64位,如果本地已安装JDK,可以通过命令java -version来查看JDK版本。 登录区块链服务管理控制台,进入“应用案例”,下载“快速入门”中的Java应用示例。Windows操作系统下载并解压
该内容仅适用于Fabric架构版本的区块链实例的Java语言链代码开发。 请使用Gradle或Maven构建管理工具组织链代码项目。若链代码项目中包含非本地依赖,请确保对应区块链实例的节点均绑定了弹性ip。若链代码容器将运行在受限网络环境,请确保项目中的所有依赖已配置为本地依赖。示例链代码获取方法:登录区块链
合约结构 Java语言合约由合约文件及依赖包构成,包含包声明、依赖包导入、智能合约的方法定义。 合约文件中,用户可自定义合约函数,需要实现Contract的init和invoke方法。 合约的结构如下: package com.huawei.poissonchain; import
合约仓库 合约模板是已经实现某些基本功能的智能合约,您可以使用模板提供的基础功能代码,直接使用或二次开发符合自己业务逻辑的智能合约。 合约管理可以管理合约模板,您可以在合约模板市场查看各行业场景的合约模板,并下载模板使用。 下载合约模板 登录区块链服务管理控制台。 在页面左侧选择“合约仓库”。
概述 用户的应用程序通过链代码与账本数据进行交互。应用程序开发可使用的语言比较广泛,如Golang、Solidity、Java、C++、Python、Node.js等。应用程序和链代码开发语言无强对应关系,只要应用程序能通过SDK来调用链代码即可。 Hyperledger Fab