当前位置: 首页 > wzjs >正文

南通网站建设服务公司网络推广协议

南通网站建设服务公司,网络推广协议,怎么制作表格教程,搜索网站建设文章目录 一、控制台概述二、环境准备2.1 安装依赖Ubuntu 环境安装 JavaCentOS 环境安装 Java 三、获取与配置控制台3.1 获取控制台3.2 控制台目录结构3.3 配置控制台3.4 配置国密版控制台 四、合约编译工具使用五、启动控制台5.1 启动脚本说明5.2 账户使用方式 六、控制台常用…

文章目录

    • 一、控制台概述
    • 二、环境准备
      • 2.1 安装依赖
        • Ubuntu 环境安装 Java
        • CentOS 环境安装 Java
    • 三、获取与配置控制台
      • 3.1 获取控制台
      • 3.2 控制台目录结构
      • 3.3 配置控制台
      • 3.4 配置国密版控制台
    • 四、合约编译工具使用
    • 五、启动控制台
      • 5.1 启动脚本说明
      • 5.2 账户使用方式
    • 六、控制台常用命令
      • 6.1 基础命令
      • 6.2 合约相关命令

一、控制台概述

FISCO BCOS 控制台是 FISCO BCOS 2.0 重要的交互式客户端工具,它通过 Web3SDK 与区块链节点建立连接,实现对区块链节点数据的读写访问请求。控制台拥有丰富的命令,包括查询区块链状态、管理区块链节点、部署并调用合约等。此外,控制台还提供一个合约编译工具,用户可以方便快捷地将 Solidity 合约文件编译为 Java 合约文件。

二、环境准备

在使用控制台之前,需要先准备好运行环境。

2.1 安装依赖

FISCO BCOS 控制台需要 Java 8 及以上版本。以下是不同系统的 Java 安装方法:

Ubuntu 环境安装 Java
# 安装默认 Java 版本(Java 8 或以上)
sudo apt install -y default-jdk# 查询 Java 版本
java -version
CentOS 环境安装 Java

CentOS 下 OpenJDK 无法正常工作,需要安装 Oracle JDK:

# 创建新的文件夹,安装 Java 8 或以上的版本,将下载的 jdk 放在 software 目录
# 从 Oracle 官网选择 Java 8 或以上的版本下载,例如下载 jdk-8u201-linux-x64.tar.gz
$ mkdir /software# 解压 jdk
$ tar -zxvf jdk-8u201-linux-x64.tar.gz# 配置 Java 环境,编辑 /etc/profile 文件
$ vim /etc/profile# 打开以后将下面三句输入到文件里面并退出
export JAVA_HOME=/software/jdk-8u201  # 这是一个文件目录,非文件
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar# 生效 profile
$ source /etc/profile# 查询 Java 版本,出现的版本是自己下载的版本,则安装成功。
java -version

三、获取与配置控制台

3.1 获取控制台

cd ~ && mkdir -p fisco && cd fisco# 获取控制台
curl -LO https://github.com/FISCO-BCOS/console/releases/download/v1.0.9/download_console.sh && bash download_console.sh

如果因为网络问题导致长时间无法下载,请尝试:

curl -LO https://gitee.com/FISCO-BCOS/console/raw/master/tools/download_console.sh && bash download_console.sh

3.2 控制台目录结构

|-- apps # 控制台 jar 包目录
|   -- console.jar
|-- lib # 相关依赖的 jar 包目录
|-- conf
|   |-- applicationContext-sample.xml # 配置文件
|   |-- log4j.properties  # 日志配置文件
|-- contracts # 合约所在目录
|   -- solidity  # solidity 合约存放目录
|       -- HelloWorld.sol # 普通合约:HelloWorld 合约,可部署和调用
|       -- TableTest.sol # 使用 CRUD 接口的合约:TableTest 合约,可部署和调用
|       -- Table.sol # 提供 CRUD 操作的接口合约
|   -- console  # 控制台部署合约时编译的合约 abi, bin,java 文件目录
|   -- sdk      # sol2java.sh 脚本编译的合约 abi, bin,java 文件目录
|-- start.sh # 控制台启动脚本
|-- get_account.sh # 账户生成脚本
|-- sol2java.sh # solidity 合约文件编译为 java 合约文件的开发工具脚本
|-- replace_solc_jar.sh # 编译 jar 包替换脚本

3.3 配置控制台

  1. 区块链节点和证书的配置
    将节点 sdk 目录下的 ca.crtsdk.crtsdk.key 文件拷贝到 conf 目录下。

  2. 重命名配置文件
    conf 目录下的 applicationContext-sample.xml 文件重命名为 applicationContext.xml 文件。

  3. 配置 applicationContext.xml 文件

    <?xml version="1.0" encoding="UTF-8" ?>
    <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsdhttp://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-2.5.xsdhttp://www.springframework.org/schema/aophttp://www.springframework.org/schema/aop/spring-aop-2.5.xsd"><bean id="encryptType" class="org.fisco.bcos.web3j.crypto.EncryptType"><constructor-arg value="0"/> <!-- 0:standard 1:guomi --></bean><bean id="groupChannelConnectionsConfig" class="org.fisco.bcos.channel.handler.GroupChannelConnectionsConfig"><property name="allChannelConnections"><list>  <!-- 每个群组需要配置一个 bean --><bean id="group1"  class="org.fisco.bcos.channel.handler.ChannelConnections"><property name="groupId" value="1" /> <!-- 群组的 groupID --><property name="connectionsStr"><list><value>127.0.0.1:20200</value>  <!-- IP:channel_port --></list></property></bean></list></property></bean><bean id="channelService" class="org.fisco.bcos.channel.client.Service" depends-on="groupChannelConnectionsConfig"><property name="groupId" value="1" /> <!-- 连接 ID 为 1 的群组 --><property name="agencyName" value="fisco" /><property name="allChannelConnections" ref="groupChannelConnectionsConfig"></property></bean>
    </beans>
    

    如果搭链时设置的 channel_listen_ip 为 127.0.0.1 或者 0.0.0.0,channel_port 为 20200,则 applicationContext.xml 配置不用修改。

3.4 配置国密版控制台

国密版的控制台配置与非国密版控制台的配置流程有一些区别,流程如下:

  1. 区块链节点和证书的配置
    将节点 sdk 目录下的 ca.crtsdk.crtsdk.key 文件拷贝到 conf 目录下。

  2. 重命名配置文件
    conf 目录下的 applicationContext-sample.xml 文件重命名为 applicationContext.xml 文件。

  3. 打开国密开关

    <bean id="encryptType" class="org.fisco.bcos.web3j.crypto.EncryptType"><!-- encryptType 值设置为 1,打开国密开关 --><constructor-arg value="1"/> <!-- 0:standard 1:guomi -->
    </bean>
    
  4. 替换国密编译包

    # 下载 solcJ-all-0.4.25-gm.jar 放在 console 目录下
    $ curl -LO https://github.com/FISCO-BCOS/LargeFiles/raw/master/tools/solcj/solcJ-all-0.4.25-gm.jar# 替换 Jar 包
    $ bash replace_solc_jar.sh solcJ-all-0.4.25-gm.jar
    

四、合约编译工具使用

控制台提供一个专门的编译合约工具,方便开发者将 solidity 合约文件编译为 java 合约文件。使用该工具,分为两步:

  1. 将 solidity 合约文件放在 contracts/solidity 目录下。

  2. 通过运行 sol2java.sh 脚本(需要指定一个 java 的包名)完成编译合约任务。例如,contracts/solidity 目录下已有 HelloWorld.solTableTest.solTable.sol 合约,指定包名为 org.com.fisco,命令如下:

    $ cd ~/fisco/console
    $ ./sol2java.sh org.com.fisco
    

运行成功之后,将会在 console/contracts/sdk 目录生成 java、abi 和 bin 目录:

|-- abi # 编译生成的 abi 目录,存放 solidity 合约编译的 abi 文件
|   |-- HelloWorld.abi
|   |-- Table.abi
|   |-- TableTest.abi
|-- bin # 编译生成的 bin 目录,存放 solidity 合约编译的 bin 文件
|   |-- HelloWorld.bin
|   |-- Table.bin
|   |-- TableTest.bin
|-- java  # 存放编译的包路径及 Java 合约文件
|   |-- org
|       |-- com
|           |-- fisco
|               |-- HelloWorld.java # 编译的 HelloWorld Java 文件
|               |-- Table.java  # 编译的 CRUD 接口合约 Java 文件
|               |-- TableTest.java  # 编译的 TableTest Java 文件

五、启动控制台

在节点正在运行的情况下,启动控制台:

$ ./start.sh# 输出下述信息表明启动成功
=====================================================================================
Welcome to FISCO BCOS console(1.0.4)!
Type 'help' or 'h' for help. Type 'quit' or 'q' to quit console.________ ______  ______   ______   ______       _______   ______   ______   ______
|        |      \/      \ /      \ /      \     |       \ /      \ /      \ /      \
| $$$$$$$$\$$$$$|  $$$$$$|  $$$$$$|  $$$$$$\    | $$$$$$$|  $$$$$$|  $$$$$$|  $$$$$$\
| $$__     | $$ | $$___\$| $$   \$| $$  | $$    | $$__/ $| $$   \$| $$  | $| $$___\$$
| $$  \    | $$  \$$    \| $$     | $$  | $$    | $$    $| $$     | $$  | $$\$$    \
| $$$$$    | $$  _\$$$$$$| $$   __| $$  | $$    | $$$$$$$| $$   __| $$  | $$_\$$$$$$\
| $$      _| $$_|  \__| $| $$__/  | $$__/ $$    | $$__/ $| $$__/  | $$__/ $|  \__| $$
| $$     |   $$ \\$$    $$\$$    $$\$$    $$    | $$    $$\$$    $$\$$    $$\$$    $$\$$      \$$$$$$ \$$$$$$  \$$$$$$  \$$$$$$      \$$$$$$$  \$$$$$$  \$$$$$$  \$$$$$$
=====================================================================================
[group:1]>

5.1 启动脚本说明

查看当前控制台版本:

./start.sh --version
console version: 1.0.4

5.2 账户使用方式

控制台提供账户生成脚本 get_account.sh(脚本用法请参考账户管理文档),生成的账户文件在 accounts 目录下,控制台加载的账户文件必须放置在该目录下。控制台启动方式有如下几种:

  • 默认启动:控制台随机生成一个账户,使用控制台配置文件指定的群组号启动。

    ./start.sh
    
  • 指定群组号启动:控制台随机生成一个账户,使用命令行指定的群组号启动。

    ./start.sh 2
    

    注意:指定的群组在控制台配置文件中需要配置 bean。

  • 使用 PEM 格式私钥文件启动:使用指定的 pem 文件的账户启动,输入参数:群组号、-pem、pem 文件路径

    ./start.sh 1 -pem accounts/0xebb824a1122e587b17701ed2e512d8638dfb9c88.pem
    
  • 使用 PKCS12 格式私钥文件启动:使用指定的 p12 文件的账户,需要输入密码,输入参数:群组号、-p12、p12 文件路径

    ./start.sh 1 -p12 accounts/0x5ef4df1b156bc9f077ee992a283c2dbb0bf045c0.p12
    Enter Export Password:
    

六、控制台常用命令

6.1 基础命令

  • help:查看控制台所有的命令。

    [group:1]> help
    
  • switch:切换到指定群组。

    [group:1]> switch 2
    Switched to group 2.
    [group:2]>
    
  • getBlockNumber:查看区块高度。

    [group:1]> getBlockNumber
    90
    
  • getSealerList:查看共识节点列表。

    [group:1]> getSealerList
    [0c0bbd25152d40969d3d3cee3431fa28287e07cff2330df3258782d3008b876d146ddab97eab42796495bfbb281591febc2a0069dcc7dfe88c8831801c5b5801,10b3a2d4b775ec7f3c2c9e8dc97fa52beb8caab9c34d026db9b95a72ac1d1c1ad551c67c2b7fdc34177857eada75836e69016d1f356c676a6e8b15c45fc9bc34,622af37b2bd29c60ae8f15d467b67c0a7fe5eb3e5c63fdc27a0ee8066707a25afa3aa0eb5a3b802d3a8e5e26de9d5af33806664554241a3de9385d3b448bcd73
    ]
    

6.2 合约相关命令

  • deploy:部署合约。

    # 部署 HelloWorld 合约
    [group:1]> deploy HelloWorld.sol
    contract address:0xc0ce097a5757e2b6e189aa70c7d55770ace47767# 部署 TableTest 合约
    [group:1]> deploy TableTest.sol
    contract address:0xd653139b9abffc3fe07573e7bacdfd35210b5576
    
  • call:调用合约。

    # 调用 HelloWorld 的 get 接口获取 name 字符串
    [group:1]> call HelloWorld.sol 0xc0ce097a5757e2b6e189aa70c7d55770ace47767 get
    Hello, World!# 调用 HelloWorld 的 set 接口设置 name 字符串
    [group:1]> call HelloWorld.sol 0xc0ce097a5757e2b6e189aa70c7d55770ace47767 set "Hello, FISCO BCOS"
    transaction hash:0xa7c7d5ef8d9205ce1b228be1fe90f8ad70eeb6a5d93d3f526f30d8f431cb1e70# 调用 HelloWorld 的 get 接口获取 name 字符串,检查设置是否生效
    [group:1]> call HelloWorld.sol 0xc0ce097a5757e2b6e189aa70c7d55770ace47767 get
    Hello, FISCO BCOS
    
  • deployByCNS:采用 CNS 部署合约。用 CNS 部署的合约,可用合约名直接调用。

    # 部署 HelloWorld 合约 1.0 版
    [group:1]> deployByCNS HelloWorld.sol 1.0
    contract address:
    

详细内容访问:https://www.bookstack.cn/read/fisco-bcos-2.4-zh/5298fab820a14fd7.md

http://www.dtcms.com/wzjs/159060.html

相关文章:

  • 南宁做网站外包sem和seo区别与联系
  • 网站建设推广的广告语百度最新秒收录方法2021
  • 做视频直播的网站企业网络营销案例分析
  • wordpress安装后查看站点失败广告联盟全自动赚钱系统
  • 定制制作网站开发谷歌搜索广告
  • 成立一个公司需要什么条件网站seo优化报告
  • 网站制作动态转静态怎么做深圳百度推广联系方式
  • 包头网站建设良居网络网络营销活动案例
  • 网站咋做推广天津seo培训
  • 佛山市公司网站制作杭州关键词排名工具
  • 小型网站建设四川旅游seo整站优化站优化
  • 做物流网站多少钱seo顾问服务四川
  • 做网站赚外快百度快速排名
  • 门户网站建设目的谷歌官网入口手机版
  • 铭做网站建设池州网络推广
  • 专业公司做网站廊坊百度关键词优化怎么做
  • 开发一个商城网站需要多少钱平台优化
  • 网站后台作用2022当下社会热点话题
  • wordpress是动态网站吗优化网站打开速度
  • 服务一流的做网站百度官网首页
  • 医药网站建设怎么注册一个网站
  • 微信公众号怎么做的跟网站似的百度官网入口链接
  • 电商网站需求分析前端seo怎么优化
  • 免费做网站公司哪家好360免费建站官网
  • 幼儿园管理网站模板18款禁用看奶app入口
  • 首页页面设计优化推广seo
  • 做网站怎么样引流今日百度关键词排名
  • 做网站多久学会北京网站
  • 电子商务网站建设方案案例广州白云区新闻头条最新消息今天
  • 雅安 网站建设信息流优化师是做什么的