Fabric链码及应用快速开发工具箱【Go/Java/JavaScript】

简介:

Wiz工具箱可以快速搭建一个Hyperledger Fabric开发网络作为链码和应用开发环境,官方下载地址:http://sc.hubwiz.com/codebag/fabric-wiz/

Wiz工具箱的主要特性如下:

  • 内置原生Fabric 1.4 LTS版本,无需虚拟机/Docker等复杂环境安装
  • 内置多语言Fabric链码模板和应用模板,支持Go、Java和JavaScript
  • 支持Fabric区块链链码和应用开发流程的完整命令集

Wiz工具箱目前支持Linux和OSX,Windows环境下可以使用BYFN一键启动工具 快速搭建Fabric区块链开发环境。

2、使用Wiz工具箱

启动Fabric网络需要使用三个终端,分别称为1#、2#和3#。

__STEP 1__:在1#终端创建一个新目录devnet用来初始化fabric项目。例如下面的命令选择JavaScript作为链码和应用开发语言进行初始化:

~$ mkdir devnet && cd devnet
~/devnet$ wiz init js

结果如下:

初始化之后的项目目录结构如下:

  • __network__:fabric网络定义与配置数据目录
  • __chaincode__:链码源代码目录
  • __application__:应用源代码目录
  • __script__:Wiz工具箱脚本目录

wiz工具箱目前支持三种开发语言,在执行wiz init命令时需要声明项目的开发语言,以便wiz工具箱生成正确的项目代码:

  • __go__:项目链码和应用开发语言:golang
  • __java__:项目链码和应用开发语言:java
  • __js__:项目链码和应用开发语言:javascript

__STEP 2__:在1#终端使用wiz net reset初始化Fabric网络的密码学资料和通道 初始化交易资料:

~/devnet$ wiz net reset

结果如下:

__STEP 3__:在1#终端使用wiz net start启动Fabric网络的peer节点和orderer节点:

~/devnet$ wiz net start

结果如下:

Wiz工具箱提供的Fabric开发网络中包含单一的peer节点和orderer节点,网络配置描述如下:

  • 机构:Org1
  • MSPID:Org1MSP
  • 通道名称:ch1
  • 链码名称:wizcc
  • 排序节点:127.0.0.1:7050
  • 对等节点:127.0.0.1:7051/7052

__STEP 4__:在2#终端使用wiz cc start启动wiz工具箱预置的链码:

~/devnet$ wiz cc start

结果如下:

__STEP 5__:在3#终端使用wiz ch start命令创建通道ch1并将peer节点加入通道:

~/fabric-chaincode-python/devnet$ wiz ch start

结果如下:

__测试链码__:在3#终端使用wiz admin命令进入管理控制台:

~/fabric-chaincode-python/devnet$ wiz admin

结果如下:

使用peer chaincode query命令测试预置链码的查询:

admin@org1> peer chaincode query -n wizcc -c '{"args":[]}' -C ch1

结果如下:

使用peer chaincode invoke命令测试预置链码的交易:

admin@org1> peer chaincode invoke -n wizcc -c '{"args":[]}' -C ch1

结果如下:

3、Wiz工具箱命令速查表

# 命令 说明
1 wiz init <lang> 初始化项目目录,开发语言lang选项:go、java、js
2 wiz net reset 复位fabric开发网络的密码学资料和通道创世交易
3 wiz net start 启动Fabric开发网络,按Ctrl+C可关闭开发网络
4 wiz cc start 启动项目链码并连接到Fabric开发网络中的peer节点
5 wiz ch start 创建通道,安装链码并在该通道上激活链码
6 wiz app start 启动项目应用并接入Fabric开发网络
7 wiz admin 进入Fabric开发网络的管理终端,可以执行链码查询、调用等操作
8 wiz stop 关闭Fabric网络的所有进程,包括peer、orderer、链码、应用等

Fabric区块链快速开发工具箱下载地址:http://sc.hubwiz.com/codebag/fabric-wiz/

目录
相关文章
|
17天前
|
人工智能 安全 Java
Java和Python在企业中的应用情况
Java和Python在企业中的应用情况
45 7
|
27天前
|
JSON Java Apache
非常实用的Http应用框架,杜绝Java Http 接口对接繁琐编程
UniHttp 是一个声明式的 HTTP 接口对接框架,帮助开发者快速对接第三方 HTTP 接口。通过 @HttpApi 注解定义接口,使用 @GetHttpInterface 和 @PostHttpInterface 等注解配置请求方法和参数。支持自定义代理逻辑、全局请求参数、错误处理和连接池配置,提高代码的内聚性和可读性。
104 3
|
10天前
|
开发框架 Go 计算机视觉
纯Go语言开发人脸检测、瞳孔/眼睛定位与面部特征检测插件-助力GoFly快速开发框架
开发纯go插件的原因是因为目前 Go 生态系统中几乎所有现有的人脸检测解决方案都是纯粹绑定到一些 C/C++ 库,如 OpenCV 或 dlib,但通过 cgo 调用 C 程序会引入巨大的延迟,并在性能方面产生显著的权衡。此外,在许多情况下,在各种平台上安装 OpenCV 是很麻烦的。使用纯Go开发的插件不仅在开发时方便,在项目部署和项目维护也能省很多时间精力。
|
12天前
|
缓存 Java 开发者
Java多线程并发编程:同步机制与实践应用
本文深入探讨Java多线程中的同步机制,分析了多线程并发带来的数据不一致等问题,详细介绍了`synchronized`关键字、`ReentrantLock`显式锁及`ReentrantReadWriteLock`读写锁的应用,结合代码示例展示了如何有效解决竞态条件,提升程序性能与稳定性。
37 5
|
10天前
|
监控 Java 数据库连接
Java线程管理:守护线程与用户线程的区分与应用
在Java多线程编程中,线程可以分为守护线程(Daemon Thread)和用户线程(User Thread)。这两种线程在行为和用途上有着明显的区别,了解它们的差异对于编写高效、稳定的并发程序至关重要。
19 2
|
20天前
|
安全 Java 开发者
Java 多线程并发控制:深入理解与实战应用
《Java多线程并发控制:深入理解与实战应用》一书详细解析了Java多线程编程的核心概念、并发控制技术及其实战技巧,适合Java开发者深入学习和实践参考。
42 6
|
17天前
|
关系型数据库 MySQL Java
MySQL索引优化与Java应用实践
【11月更文挑战第25天】在大数据量和高并发的业务场景下,MySQL数据库的索引优化是提升查询性能的关键。本文将深入探讨MySQL索引的多种类型、优化策略及其在Java应用中的实践,通过历史背景、业务场景、底层原理的介绍,并结合Java示例代码,帮助Java架构师更好地理解并应用这些技术。
22 2
|
19天前
|
存储 安全 Java
Java多线程编程中的并发容器:深入解析与实战应用####
在本文中,我们将探讨Java多线程编程中的一个核心话题——并发容器。不同于传统单一线程环境下的数据结构,并发容器专为多线程场景设计,确保数据访问的线程安全性和高效性。我们将从基础概念出发,逐步深入到`java.util.concurrent`包下的核心并发容器实现,如`ConcurrentHashMap`、`CopyOnWriteArrayList`以及`BlockingQueue`等,通过实例代码演示其使用方法,并分析它们背后的设计原理与适用场景。无论你是Java并发编程的初学者还是希望深化理解的开发者,本文都将为你提供有价值的见解与实践指导。 --- ####
|
20天前
|
Java 测试技术 API
Java 反射机制:深入解析与应用实践
《Java反射机制:深入解析与应用实践》全面解析Java反射API,探讨其内部运作原理、应用场景及最佳实践,帮助开发者掌握利用反射增强程序灵活性与可扩展性的技巧。
53 4
|
22天前
|
Java BI API
Java Excel报表生成:JXLS库的高效应用
在Java应用开发中,经常需要将数据导出到Excel文件中,以便于数据的分析和共享。JXLS库是一个强大的工具,它基于Apache POI,提供了一种简单而高效的方式来生成Excel报表。本文将详细介绍JXLS库的使用方法和技巧,帮助你快速掌握Java中的Excel导出功能。
53 6