本节运行农产品溯源Demo最终工程,并演示如何操作,后续章节会对代码进行概要分析。1.智能合约更改智能合约与之前合约有些变化,增加查询的字段,便于前端数据聚合。注意,重新打包合约,别忘记更改approve.sh中的packageid。packagemainimport( "encoding/json" "fmt" "strconv" "github.com/hyperledger/fabric-chaincode-go/shim" "github.com/hyperledger/fabric-protos-go/peer")typeTracestruct{}
经过前面教程的学习,我们已经了解如何搭建多Orderer、多Peer的农产品溯源集群,从本节开始我们配合前后端搭建完整农产品溯源项目。注意:1)该教程给出的农产品溯源项目是Demo,并不是真实生产可用的项目,生产项目需要考虑更多的产品功能,一个农作物信息录入可能就要二、三十个字段。Demo项目不要报以太高期望。2)第二个是严谨性,后台对前端的身份验证、字段格式校验可能会不全面、以及服务crash后的原子性等,抗攻击能力弱。3)搭建完整农产品溯源项目,涉及到前端、后端、区块链集群三个部分,其中还包括MySQL、Redis中间件,涉及的技术栈广泛,需要学习者有相关的技术储备,如没有技术储备,可能本
经过前面教程的学习,我们已经了解如何搭建多Orderer、多Peer的农产品溯源集群,从本节开始我们配合前后端搭建完整农产品溯源项目。注意:1)该教程给出的农产品溯源项目是Demo,并不是真实生产可用的项目,生产项目需要考虑更多的产品功能,一个农作物信息录入可能就要二、三十个字段。Demo项目不要报以太高期望。2)第二个是严谨性,后台对前端的身份验证、字段格式校验可能会不全面、以及服务crash后的原子性等,抗攻击能力弱。3)搭建完整农产品溯源项目,涉及到前端、后端、区块链集群三个部分,其中还包括MySQL、Redis中间件,涉及的技术栈广泛,需要学习者有相关的技术储备,如没有技术储备,可能本
本节介绍后端代码是如何与区块链网络连接的。1.在后端代码里fabric包负责与区块链网络连接,并发送交易。2.fabric.Const文件定义区块链网络拓扑结构,请查看注释。publicfinalclassConst{ //区块链网络中organizations的配置目录,从配置文件读取证书目录publicstaticStringBASE_PATH;//节点的域名信息,域名解析在/etc/hostspublic
本节介绍后端代码是如何与区块链网络连接的。1.在后端代码里fabric包负责与区块链网络连接,并发送交易。2.fabric.Const文件定义区块链网络拓扑结构,请查看注释。publicfinalclassConst{ //区块链网络中organizations的配置目录,从配置文件读取证书目录publicstaticStringBASE_PATH;//节点的域名信息,域名解析在/etc/hostspublic
目前在农产品销售过程出现一个非常严重的问题─滞销,我们时不时的能在新闻报道看到某地区农产品大量上市却少有客商前来收购,甚至一度出现大量新鲜的农产品烂在地头无人问津,被当作垃圾一样扔掉。客商在收购农产品过程中,将产品的收购价格压的极低,随着人工及种植成本的增加,对于农民来说已经没有多少利润可言,农产品出现的销售难问题,一方面挫伤了农民的生产积极性,另一方面造成了大量资源的浪费。反观消费市场,普通消费者所买到农产品的价格又是比较高的,一边无人买一边吃不起,这对矛盾依然存在。近几年来,我国通过网络购买产品的人数在逐年增多,推动着我国电子商务飞速发展。电商平台层出不穷,但我们可以切实的感受到,无人买与
匹配Fabric2.2版本的区块链浏览器部署。1.在/root下创建目录explorer2.构建以下目录,其中pgdata、walletstore目录是运行时动态创建的数据库,如果重新部署区块链集群,需要./stop.sh,删除这两个目录后,重新执行/start.sh3.crypto目录是区块链集群证书信息cp-r/root/fabric/scripts/fabric-samples/test-network/organizations/*crypto/4.config.json{ "network-configs":{ "test-network"
作者主页:编程指南针作者简介:Java领域优质创作者、CSDN博客专家、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师主要内容:Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助收藏点赞不迷路 关注作者有好处文末获取源码 项目编号:BS-SC-054一,环境介绍语言环境:Java: jdk1.8数据库:Mysql:mysql5.7应用服务器:Tomcat: tomcat8.5.31开发工具:IDEA或eclipse后台开发技术: springboot+mybatis+springmvc前台开发技术:HTML5+CSS+JQUERY+Bootstrap二,项目简介本系统主要基于S
前面讲过农产品溯源Demo比较简单,如果想二次开发需要重点关注的目录。如果要开发一个新的API、对接新的合约,需要有哪些步骤?定义数据结构,在domain包新增Class,定义好数据字段,定义好get、set方法。domain包没有业务的逻辑实现,只有结构、字段定义。如果字段首字母小写,字段名称和Json字段一致是不需要使用@JsonProperty(value="Name")注解的。例如前端传入的字段是cropID,Java定义cropID,则不需要使用JsonProperty注解,后端就可以接收该字段。controller包增加新的路由,但此时还没有实现方法,只能定义好路由url,等ser
这是一篇后补文章,看时间大家能够看出来,通过前面的学习,大家知道如何增加组织、如何部署多Orderer,本节介绍如何在一个组织内部署多个Peer节点,本节是基于上一节操作的继续,脚本也是基于上节进行修改的。1.目标:为组织1新增一个节点peer0.org1.example.compeer0.org2.example.compeer0.org3.example.compeer0.org4.example.comorderer.example.com:7050orderer1.example.com:6050orderer2.example.com:5050为组织org1,新增一个节点,名字为pe