文档首页 > > 开发指南> 示例Demo> Java SDK Demo

Java SDK Demo

分享
更新时间: 2020/07/20 GMT+08:00

本节提供一个基于java SDK的Demo,支持国密加密算法。

只用于场景体验,不用于实际应用。

准备工作

操作指导

说明

安装开发工具(IDE)

本地需提前安装JDK、maven和eclipse(可以使用您习惯的IDE)。

JDK需要安装1.8版本64位,如果本地已安装JDK,可以通过cmd命令java -version来查看JDK版本。

购买区块链服务

  1. 登录区块链服务管理控制台。
  2. 单击页面右上角的“购买区块链服务”,在购买页面填写相关参数。

    表1 购买参数

    参数

    参数值

    计费模式

    按需计费

    区域

    使用默认区域

    企业项目

    选择已创建的企业项目,例如:default。

    如果您没有开通企业管理服务,将无法看到企业项目选项。

    区块链服务名称

    java-sdk-demo

    版本类型

    基础版(若安全机制需要使用国密算法,请选择企业版)

    区块链服务类型

    私有链

    共识策略

    测试策略(SOLO)

    资源初始密码

    请自行设置

    资源初始密码确认

    请自行设置

    高级配置

    现在配置

    集群

    创建新的CCE集群

    可用区

    请自行选择

    云主机规格

    4核/8GB

    云主机个数

    1

    高可用

    虚拟私有云

    系统自动创建VPC

    云主机登录方式

    密码

    root密码

    如果填写该项,则以填写值为准,如果不填写,则以资源初始密码为准。

    确认密码

    -

    区块链管理初始密码

    如果填写该项,则以填写值为准,如果不填写,则以资源初始密码为准。

    区块链管理确认密码

    -

    版本信息

    使用默认版本

    存储卷类型

    文件存储卷

    peer节点组织

    系统已默认创建1个节点组织,名称为organization,将数量修改为1。

    共识节点数量

    1

    开启共识节点数据老化

    安全机制

    ECDSA

    须知:

    安全机制支持选择国密算法。若选择了国密算法,则Demo的部署需要做其他修改,请注意下文中的相关描述。

    节点组织存储容量

    使用默认规格

    账本数据存储方式

    选择“文件数据库(goleveldb)”

    通道配置

    organization节点组织已默认添加进至通道中,保持默认即可。

    添加RESTful APIs支持

    配置弹性IP

    弹性IP计费方法

    按带宽计费

    弹性IP带宽

    使用默认规格

    区块生成配置

  3. 配置完成后,单击“立即购买”。待服务和组织状态变为“正常”则服务购买成功。

安装及实例化链代码

  1. 单击新创建的区块链服务右侧的“区块链管理”,登录链代码管理页面。

  2. 在登录页面输入用户名、密码、验证码,单击“登录”。

    用户名为admin,密码为您在创建区块链服务时设置的区块链管理初始密码,如果没有设置区块链管理初始密码,则以资源初始密码为准。

  3. 在链代码管理页面,单击页面左上角的

    安装参数如下:

    参数

    链代码名称

    chaincode

    链代码版本

    2.0

    账本数据存储方式

    文件数据库(goleveldb)

    选择全部Peer节点

    勾选

    组织&Peer节点

    peer-0

    链代码语言

    Golang

    链代码文件

    下载示例链代码文件:chaincode_example02.zip

    链代码描述

    根据需要填写相关描述。

  4. 单击“安装”完成链代码安装。
  5. 链代码安装完成后,在链代码列表的“操作”列,单击“实例化”。

    实例化参数如下:

    参数

    链代码名称

    chaincode

    实例化通道

    channel

    链代码版本

    2.0

    初始化函数

    init

    链代码参数

    a,200,b,250

    背书策略

    下列任意组织背书

    背书组织列表

    organization

    隐私保护配置

  6. 单击“实例化”,完成链代码在当前通道上的实例化。

    稍等2-3分钟后刷新界面,单击“实例化”列的“查看更多”,查看链代码实例化进度。

配置应用

  1. 导入项目工程

    下载项目代码并解压:javasdkdemo.zip,在eclipse界面中右键选择import,将javasdkdemo导入eclipse中(javasdkdemo为Maven工程)。

  2. SDK配置下载

    在“服务管理”界面,单击“更多> 下载SDK配置”。

    SDK配置参数如下:

    参数

    链代码名称

    chaincode

    须知:

    链代码名称需要和链代码安装&实例化时的一致。

    证书存放路径

    此处配置为下载的javasdkdemo工程的config文件夹路径。

    须知:

    将windows的反斜杠“\” 换为 “/”。例如,正确的写法为D:/javasdkdemo/config

    通道名称

    channel

    成员

    保持系统默认

    单击下载,将SDK文件下载至demo工程的config路径中,名称为java-sdk-demo-sdk-config.zip

    SDK配置参数中指定的“证书存放路径”,并非SDK文件的下载路径。如果下载时没有指定SDK文件的下载路径,则SDK文件在您系统的默认下载路径中。

  3. 证书下载

    区块链服务“服务管理页面,单击目标服务名前的,在组织列表操作列下载相关证书,将java-sdk-demo-orderer组织的管理员证书、organization组织的管理员证书,下载至demo工程的config路径中。

  4. 拷贝解压

    如果没有指定下载路径,请在系统默认下载路径中将organization-admin.zip、java-sdk-demo-orderer-admin.zip、java-sdk-demo-channel-sdk-config.zip,拷贝至demo工程的config路径下,并且解压。

部署应用

  1. 找到/javasdkdemo/src/main/java/handler/Main.java,将Main类中如下代码中的文件路径修改为java-sdk-demo-sdk-config.yaml文件的绝对路径,记得将windows的反斜杠“\” 改为 “/”。

    helper.setConfigCtx("E:/yourdir/huawei.yaml");

    若您在订购区块链服务时,安全机制选择的是国密加密,则还需要做如下修改:国密算法需要引用华为自己的fabric-sdk依赖包,故需要在pom.xml 中添加对工程lib文件夹“fabric-sdk-java-1.4.1-jar-with-dependencies.jar”中的依赖,如下图所示去掉该依赖的注释即可。

  2. 运行main函数。

    每执行一次,表示a与b进行交易,a向b转账100,如下为示例图:

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问