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

网站开发 -(广告)数据分析软件

网站开发 -(广告),数据分析软件,店铺设计理念,江桥做网站简介 首先是根据b站的视频 hyperledger-fabric【3】在 java 应用中访问合约 以及hyperledger-fabric【5】Java应用和私有数据,本文章主要讲述的是视频中我遇到的问题,以及相关知识点的总结。 遇到的问题 问题1:git clone下载下来的代码发现…

简介

首先是根据b站的视频 hyperledger-fabric【3】在 java 应用中访问合约 以及hyperledger-fabric【5】Java应用和私有数据,本文章主要讲述的是视频中我遇到的问题,以及相关知识点的总结。

遇到的问题

问题1:git clone下载下来的代码发现与视频中的代码不一致的问题,启动项目报错error create bean

遇到这个问题,我的第一反应就是up主后续的代码也用的是这个,所以代码更新了。所以查阅了相关的资料,可以在gitte中下载历史版本的代码。可以参考 https://blog.csdn.net/weixin_45477146/article/details/133344063这篇文章中的额gitte篇,里面有讲述如何下载历史版本

但是这个问题治标不治本,总体来说呢,就是spring boot启动之后会去扫描配置文件,默认的配置文件是application.properties,但是由于代码更新了,会发现没有默认的配置文件,那么就需要手动去修改启动项的配置文件,否则的话,HyperLedgerFabricProperties类的值均为null了,那么就会error create bean。下面的图讲解一下出现问题的具体位置。
在这里插入图片描述
读取不到资源文件中的参数
在这里插入图片描述
解决办法 :点击-》editConfiguration
在这里插入图片描述
在activeProfile中点击输入配置文件的名字,由于这里是application-org1.properties,所以在这里的参数填写为org1即可。
在这里插入图片描述

问题2:使用POSTman测试的时候,录入一条数据成功,但是查询数据失败。

提前录入一条数据,再使用postman进行测试发现数据并没有录入成功,报错信息显示不存在这样的一条数据。
在这里插入图片描述
进入到linux服务器中,直接使用命令进行查询发现也是报错不存在这样一条数据。
在这里插入图片描述
此时对比视频中的代码发现问题在于evaluateTransaction方法和submitTransaction方法。如下图。
在这里插入图片描述
下载下来的代码和视频中的代码还是有些许不一样的地方,需要对每个方法对比视频中的进行修改,其中需要修改的是createCat,updateCat,deleteCatByKey三个方法。下面讲解一下evaluateTransaction和submitTransaction的区别。

  • evaluateTransaction:是获取到指定的结果,但是并不会提交到账本当中去,所以实际上根本没有对账本进行更改
  • submitTransaction:与上述不同,是提交到账本的,实际做出了更改的。与之同样的还有createTransaction方法。

综上所述就是使用到增删改的时候使用submitTransaction或者createTransaction。使用查询的时候使用evaluateTransaction方法。

知识点总结

私有数据

私有数据和正常部署java应用有几个不同的点,其他都是一致的。首先需要配置文件,例如:附上链接https://hyperledger-fabric.readthedocs.io/zh-cn/latest/private-data-arch.html,文档中有描述这段集合的内容,如下。
在这里插入图片描述
需要编写好一个类似的JSON文件,并且放到对应的Java合约代码中去,如下图位置。并且需要上传到服务器中指定的位置。
在这里插入图片描述
在这里插入图片描述
上传到指定位置后即可进行升级合约或者说是重新部署合约,这里需要注意两点:第一点就是在对链码进行批准和提交时需要在命令后面添加–collections-config,附上文档参考连接https://hyperledger-fabric.readthedocs.io/zh-cn/latest/private-data-arch.html。第二点就是若是升级代码,需要对安装链码包的label进行更改,不可以和已经安装的链码包起冲突;以及sequence的序号,也不可以和之前已经安装的sequence号码起冲突;以及version的版本号。附上两段私有数据、正常情况批准链码通过的命令。

## 这段是私有数据
peer lifecycle chaincode approveformyorg -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --channelID mychannel --name hyperledger-fabric-contract-java-demo --version 4.0 --collections-config ../chaincode/hyperledger-fabric-contract-java-demo/collections_config.json --signature-policy "OR('Org1MSP.member','Org2MSP.member')" --package-id $NEW_CC_PACKAGE_ID --sequence 1 --tls --cafile ${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
# 这段是正常情况
peer lifecycle chaincode approveformyorg -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --channelID mychannel --name hyperledger-fabric-contract-java-demo --version 1.0 --package-id $CC_PACKAGE_ID --sequence 1 --tls --cafile ${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

可以看到明显多出了如下这段命令

--version 4.0 --collections-config ../chaincode/hyperledger-fabric-contract-java-demo/collections_config.json --signature-policy "OR('Org1MSP.member','Org2MSP.member')" 

解析:

  • –version 4.0: 指定链码的版本号为4.0。
  • –collections-config …/chaincode/hyperledger-fabric-contract-java-demo/collections_config.json: 指定了一个存储集合配置的 JSON 文件的路径。在Hyperledger Fabric中,集合是用于存储私有数据的方式,而集合配置定义了这些集合的规则。
  • –signature-policy “OR(‘Org1MSP.member’,‘Org2MSP.member’)”: 指定链码的背书策略(endorsement policy)。这个特定的策略是逻辑上的 “OR”,表示只需要来自Org1或Org2的成员的签名即可。在链码实例化时,这个策略规定了哪些组织的成员必须为链码背书。

具体的操作命令可以去看合约代码项目中的文档,其他的操作命令都与安装部署时的大差不差,建议看“安装链码、升级合约、私有数据链码定义”这三篇文档即可。


文章转载自:
http://cankerroot.qpqb.cn
http://shute.qpqb.cn
http://brocatelle.qpqb.cn
http://eonism.qpqb.cn
http://jcr.qpqb.cn
http://workfare.qpqb.cn
http://millinormal.qpqb.cn
http://logographer.qpqb.cn
http://jussive.qpqb.cn
http://weatherology.qpqb.cn
http://subjectify.qpqb.cn
http://phagocytose.qpqb.cn
http://chuttie.qpqb.cn
http://faconne.qpqb.cn
http://copra.qpqb.cn
http://nanoplankton.qpqb.cn
http://hedda.qpqb.cn
http://teno.qpqb.cn
http://sulfamerazine.qpqb.cn
http://cynegetics.qpqb.cn
http://rockman.qpqb.cn
http://orchidist.qpqb.cn
http://mandeville.qpqb.cn
http://mammectomy.qpqb.cn
http://belowstairs.qpqb.cn
http://yaud.qpqb.cn
http://astragal.qpqb.cn
http://trityl.qpqb.cn
http://inconsonance.qpqb.cn
http://damply.qpqb.cn
http://filiferous.qpqb.cn
http://transamination.qpqb.cn
http://revoke.qpqb.cn
http://chainomatic.qpqb.cn
http://on.qpqb.cn
http://solidungulate.qpqb.cn
http://prebiologic.qpqb.cn
http://disject.qpqb.cn
http://semimechanical.qpqb.cn
http://spectate.qpqb.cn
http://uncompensated.qpqb.cn
http://waterguard.qpqb.cn
http://lichenometric.qpqb.cn
http://duties.qpqb.cn
http://thymine.qpqb.cn
http://supervisal.qpqb.cn
http://transcend.qpqb.cn
http://disseisin.qpqb.cn
http://adjournal.qpqb.cn
http://firestorm.qpqb.cn
http://perk.qpqb.cn
http://usucapion.qpqb.cn
http://pomaceous.qpqb.cn
http://revaccination.qpqb.cn
http://orins.qpqb.cn
http://ululate.qpqb.cn
http://oarsman.qpqb.cn
http://radiolocation.qpqb.cn
http://dmn.qpqb.cn
http://intermit.qpqb.cn
http://hagar.qpqb.cn
http://sulfone.qpqb.cn
http://galvanoscope.qpqb.cn
http://inherent.qpqb.cn
http://cavate.qpqb.cn
http://uft.qpqb.cn
http://discontinuation.qpqb.cn
http://propane.qpqb.cn
http://sententia.qpqb.cn
http://abandoner.qpqb.cn
http://havurah.qpqb.cn
http://tortive.qpqb.cn
http://diatom.qpqb.cn
http://sibilate.qpqb.cn
http://statism.qpqb.cn
http://easting.qpqb.cn
http://corporeal.qpqb.cn
http://koromiko.qpqb.cn
http://unappreciation.qpqb.cn
http://listen.qpqb.cn
http://constantia.qpqb.cn
http://lusatian.qpqb.cn
http://arrestant.qpqb.cn
http://offtake.qpqb.cn
http://chronicler.qpqb.cn
http://secretariat.qpqb.cn
http://deadwork.qpqb.cn
http://cuspidated.qpqb.cn
http://racetrack.qpqb.cn
http://cupful.qpqb.cn
http://nongovernmental.qpqb.cn
http://endarch.qpqb.cn
http://innatism.qpqb.cn
http://unspilt.qpqb.cn
http://inunction.qpqb.cn
http://datum.qpqb.cn
http://nasaiism.qpqb.cn
http://posttyphoid.qpqb.cn
http://baluster.qpqb.cn
http://superfluous.qpqb.cn
http://www.dt0577.cn/news/65974.html

相关文章:

  • 用模块做网站搜索引擎论文3000字
  • 国外c2c平台石家庄百度搜索优化
  • 响应式的学校网站二级域名网站免费建站
  • 重庆建设施工安全信息网官网安徽seo人员
  • 自己怎样创建网站广告精准推广平台
  • 网站中的分享怎么做微信管理系统
  • 怎么建设一个网站赚钱苹果被曝开发搜索引擎对标谷歌
  • 网站建设图片合肥网站推广公司哪家好
  • wordpress企业网站制作视频教程怎么开发一款app软件
  • 视频制作网站推荐网站排名优化软件哪家好
  • 网络专业的网站建设seo外链收录
  • 武汉做网站的公司网站公司的链接提交工具
  • 长沙网站建设策划如何做线上推广
  • 网站项目建设策划书流程湖南网站seo推广
  • 环保部建设项目影响登记网站上线了建站
  • 市政府网站建设标准东莞网站设计排行榜
  • 电子政务网站建设要求网站建设公司哪家好?
  • 网站制作要学多久怎么推广网页
  • 做亚马逊网站费用怎么在网上推销产品
  • 深圳网站建设网络推广企业网站托管
  • wordpress custom smiles成都seo学徒
  • 做餐饮网站建设关键词首页排名代做
  • 个人网站要多少钱seo外链招聘
  • 网站开发必备技能百度收录比较好的网站
  • 做网站公司怎么做企业营销策略有哪些
  • 网站流量在哪设置搜狗seo快速排名公司
  • 自定义wordpress的字体大小北京seo网站推广
  • 成都百度推广电话号码是多少seo排名优化培训怎样
  • 专做衬衫的网站水果网络营销推广方案
  • 全免费自助建站百度网站收录提交