一、安装软件

1.JDK JRE安装

2.Tomcat8.5.23

3.MySQL5.7.20

4.Navicat for MySQL

5.MyEclipse2017

6.GO语言环境准备

7.Windows安装DockerToolbox

8.mRemoteNG下载安装

9.下载Chorm浏览器的POSTMAN插件

二、Docker部署区块链

三、运行

1.MyEclipse打开项目

2.建数据库表

按照代码中NIBC文件夹下“NISBC数据库设计.docx”的要求创建名为nissql的数据库

3.连接MyEclpise和MySQL

4.运行区块链环境

(1)打开Docker Quickstart Terminal,输入docker-compose up

(2)打开mRemoteNG,双击IP打开链接

(3)在mRemoteNG输入docker ps

(4)输入docker exec -it my_vp0_1 bash

(5)退回到.../github.com目录,输入mkdir SaveState新建一个SaveState文件夹

(6)进入SaveState,输入vi SaveState.go新建一个SaveState.go文件

(7)按一下i键进入编辑模式,复制如下代码进文件(复制,在mRemoteNG鼠标右键)

package mainimport ("errors""fmt""github.com/hyperledger/fabric/core/chaincode/shim"
)type SaveState2Chaincode struct {
}func (t *SaveState2Chaincode) Init(stub shim.ChaincodeStubInterface, function string, args []string) ([]byte, error) {fmt.Printf("Init called with function %s!\n", function)return nil, nil
}func (t *SaveState2Chaincode) Invoke(stub shim.ChaincodeStubInterface, function string, args []string) ([]byte, error) {fmt.Printf("Invoke called with function %s!\n", function)var key, value stringkey = args[0]value = args[1]var err errorerr = stub.PutState(key, []byte(value))if err != nil {return nil, err} return nil, nil
}func (t *SaveState2Chaincode) Query(stub shim.ChaincodeStubInterface, function string, args []string) ([]byte, error) {fmt.Printf("Query called with function %s!\n", function)var key stringkey = args[0]valInBytes, err := stub.GetState(key)if err != nil {return nil, errors.New("Failed to get state for " + key)}message := "State for "  + key + " = " + string(valInBytes)return []byte(message), nil
}func main() {err := shim.Start(new(SaveState2Chaincode))if err != nil {fmt.Printf("Error starting Save State chaincode: %s", err)}
}

Esc,输入:wq保存文件

(8)输入go build ./(注意点之前的空格),此时查看目录下的内容可以看到一个绿色的SaveState文件

(9)输入

export CORE_CHAINCODE_ID_NAME=mycc

export CORE_PEER_ADDRESS=0.0.0.0:7051

./SaveState &


(10)向Hyperledger服务接口http://192.168.99.100:7050/registrar发送如下REST请求,使用内置的jim用户登录系统

{

"enrollId": "jim",

"enrollSecret": "6avZQLwcUe9b"

}

此时区块链环境就运行好了

(11)如果出现了各种奇奇怪怪的问题,关掉mRemoteNG和docker,重新打开docker并输入

docker rm -f $(docker ps -a -q)

docker-compose up

重新做可以解决大部分问题

5.运行MyEclipse

四、功能

1.注册用户AAA、用户BBB

2.用户AAA充值

3.用户AAA给用户BBB投保

4.用户BBB索赔,则用户AAA投保的钱进入用户BBB的账户

运行301毕设-初步学习相关推荐

  1. eclipsevue代码怎么运行_[Java教程]使用eclipse初步学习vue.js操作

    [Java教程]使用eclipse初步学习vue.js操作 0 2017-11-26 19:00:06 一.vue.js的初步认识 https://unpkg.com/vue ">vu ...

  2. HTMLParser的初步学习

    Python的自带模块--HTMLParser的初步学习 HTMLParser是Python自带的模块,使用简单,能够很容易的实现HTML文件的分析. 本文主要简单讲一下HTMLParser的用法. ...

  3. 初步学习pg_control文件之三

    接前文,初步学习pg_control文件之二 继续学习: 研究 DBState,先研究 DB_IN_PRODUCTION ,看它如何出现: 它出现在启动Postmaster时运行的函数处: /* * ...

  4. 【TensorFlow-serving】初步学习模型部署

    前言 初步学习tensorflow serving的手写数字识别模型部署.包括简单的模型训练.保存.部署上线.因为对docker和网络不太熟悉,可能会有部分错误,但是看完博客,能跑通整个流程.此博客将 ...

  5. 罗佳琪的第三次预备作业——虚拟机的安装及Linux的初步学习

    虚拟机的安装及Linux的初步学习 坎坷的安装过程 首先我按照老师给的基于VirtualBox虚拟机安装Ubuntu图文教程进行了下载,下载很顺利但是安装时出现了问题. 起初我以为是电脑位数问题,但我 ...

  6. 从入门到入土:机器学习part01|python|代码分析|初步学习

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  7. TCP与UDP协议初步学习——网络环境中分布式进程通信的基本概念

    TCP与UDP协议初步学习--网络环境中分布式进程通信的基本概念 一.单机系统中进程通信方法 进程和进程通信是操作系统中最基本的概念,首先通过回忆操作系统课程中,关于单击系统中进程和进程通信的问题描述 ...

  8. 关于Unity3D的初步学习研究周记

    关于Unity3D的初步学习研究周记(1) 学习总结: 本次学习Unity3D其实算是对基本的复习,因为在以前自己玩过一段时间,我也有一点C#的基础,所以我是直接开始做的一些小测试,因为事件原因,两个 ...

  9. Ogre个人初步学习总结

    Ogre个人初步学习总结 目录 1.开发环境 2.环境配置 2.1Ogre环境配置 2.2ParticleUniverse 环境配置 3.OGRE的学习札记 3.1Ogre的学前准备 3.1.1Ogr ...

最新文章

  1. 解决Failed to execute goal org.apache.maven.plugins
  2. php redis 二进制,php-redis扩展
  3. linux进入probe目录,Linux基础学习系列——Linux文件目录操作命令
  4. NBJL 2020论文导读14:How Much Position Information Do Convolutional Neural Networks Encode ?
  5. 2020年十大数据中心行业趋势
  6. 设计模式--状态(State)模式
  7. 为老乡拼一单拼多多拼农产品 谋定中国农民丰收节交易会
  8. java 对增删该查进行测试_java连接mysql增删改查测试通过
  9. Matlab | Matlab从入门到放弃(10)——线性方程组
  10. linux中Tomcat 8 文件上传后无访问权限
  11. Spring MVC实现Junit Case
  12. vue.js嵌套路由-------由浅入深
  13. 21 句话入门机器学习
  14. 域名卡密自助授权系统
  15. png转icon java,PNG转ICO - steambap的个人空间 - OSCHINA - 中文开源技术交流社区
  16. 线性组合(linear combinations), 生成空间(span), 基向量(basis vectors)——线性代数本质(二)
  17. 移动端开发入门--基础知识
  18. 基于QT的【第一个项目】设计+所有组件配合使用+网络编程局域网通信+文件IO操作+登录界面和头像+多界面跳转+JSON数据解析+表情包制作
  19. 干货!学霸用12个决策模型告诉你,如何判断你到底需不需要区块链!
  20. excel表格多行空白,让空白行临近上方的数据自动填充到空白行

热门文章

  1. 【无机纳米材料科研制图——3ds Max 0107】3dmax高尔基体、细胞膜建模
  2. python自动数据分析_老板让我从几百个Excel中查找数据,我用python一分钟搞定!...
  3. AcWing 3205. 最优配餐
  4. pixi-老虎机实现
  5. 关于python爬虫代理ip设置proxies的问题
  6. three.js学习笔记(十)——物理引擎
  7. html 配置超链接不可用,css如何设置超链接不可用?
  8. win8不能调节屏幕亮度解决方法
  9. 【Python】DS的基础学习笔记7:文件、异常和模块
  10. C++ mismatch(STL mismatch)算法详解