Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit8dcfff0

Browse files
committed
add JunitTest Invoke ChainCode instert and ChainCode quey
1 parentbb6874f commit8dcfff0

File tree

3 files changed

+125
-3
lines changed

3 files changed

+125
-3
lines changed

‎src/main/java/ijarvis/intelliq/FabricApp.java

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
importjava.util.Collection;
99

1010
/**
11-
*Hello world!
11+
*实现封装一些超级账本的操作方法,注意此版本为未结合使用Fabric-CA模块的代码示例
1212
*
1313
*/
1414
publicclassFabricApp{
@@ -28,6 +28,25 @@ public static void init() throws CryptoException, InvalidArgumentException {
2828
client.setUserContext(peer0org1);
2929

3030
}
31+
/*
32+
* 实现根绝给定的数据调用链码写入账本中
33+
* */
34+
publicstaticvoidinstertFabcar(Channelchannel,LedgerRecordrecord)throwsException {
35+
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
36+
ChaincodeIDcid =ChaincodeID.newBuilder().setName("epointchaincodezzk").setVersion("0.1").build();
37+
req.setChaincodeID(cid);
38+
req.setFcn("addcard");
39+
req.setArgs(record.toStringArray());
40+
logger.debug("addcard data"+record.toStringArray());
41+
Collection<ProposalResponse>resps =channel.queryByChaincode(req);
42+
for (ProposalResponseresp :resps) {
43+
Stringpayload =newString(resp.getChaincodeActionResponsePayload());
44+
System.out.println("response: " +payload);
45+
}
46+
}
47+
/*
48+
* 实现根绝给定的Key查询数据
49+
* */
3150
publicstaticvoidqueryFabcar(Channelchannel,Stringkey)throwsException {
3251
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
3352
ChaincodeIDcid =ChaincodeID.newBuilder().setName("epointchaincodezzk").setVersion("0.1").build();
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
packageijarvis.intelliq;
2+
3+
/**
4+
* 账本数据结构,非常简单的一个数据Bean而已
5+
*/
6+
publicclassLedgerRecord {
7+
privateStringPerid;
8+
privateStringLegalname;
9+
privateStringCarddate;
10+
privateStringCardaddr;
11+
privateStringCardmonery;
12+
privateStringCompanyaddr;
13+
14+
publicStringgetPerid() {
15+
returnPerid;
16+
}
17+
18+
publicvoidsetPerid(Stringperid) {
19+
Perid =perid;
20+
}
21+
22+
publicStringgetLegalname() {
23+
returnLegalname;
24+
}
25+
26+
publicvoidsetLegalname(Stringlegalname) {
27+
Legalname =legalname;
28+
}
29+
30+
publicStringgetCarddate() {
31+
returnCarddate;
32+
}
33+
34+
publicvoidsetCarddate(Stringcarddate) {
35+
Carddate =carddate;
36+
}
37+
38+
publicStringgetCardaddr() {
39+
returnCardaddr;
40+
}
41+
42+
publicvoidsetCardaddr(Stringcardaddr) {
43+
Cardaddr =cardaddr;
44+
}
45+
46+
publicStringgetCardmonery() {
47+
returnCardmonery;
48+
}
49+
50+
publicvoidsetCardmonery(Stringcardmonery) {
51+
Cardmonery =cardmonery;
52+
}
53+
54+
publicStringgetCompanyaddr() {
55+
returnCompanyaddr;
56+
}
57+
58+
publicvoidsetCompanyaddr(Stringcompanyaddr) {
59+
Companyaddr =companyaddr;
60+
}
61+
62+
publicLedgerRecord(Stringperid,Stringlegalname,Stringcarddate,Stringcardaddr,Stringcardmonery,Stringcompanyaddr) {
63+
Perid =perid;
64+
Legalname =legalname;
65+
Carddate =carddate;
66+
Cardaddr =cardaddr;
67+
Cardmonery =cardmonery;
68+
Companyaddr =companyaddr;
69+
}
70+
71+
publicString[]toStringArray() {
72+
returnnewString[] {this.getPerid(),this.getLegalname(),this.getCarddate(),this.getCardaddr(),this.getCardmonery(),this.getCompanyaddr()};
73+
}
74+
75+
@Override
76+
publicStringtoString() {
77+
return"LedgerRecord{" +
78+
"Perid='" +Perid +'\'' +
79+
", Legalname='" +Legalname +'\'' +
80+
", Carddate='" +Carddate +'\'' +
81+
", Cardaddr='" +Cardaddr +'\'' +
82+
", Cardmonery='" +Cardmonery +'\'' +
83+
", Companyaddr='" +Companyaddr +'\'' +
84+
'}';
85+
}
86+
}

‎src/test/java/ijarvis/intelliq/AppTest.java

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
importorg.apache.log4j.Logger;
55
importorg.hyperledger.fabric.sdk.Channel;
6+
importorg.hyperledger.fabric.sdk.Peer;
67
importorg.hyperledger.fabric.sdk.exception.CryptoException;
78
importorg.hyperledger.fabric.sdk.exception.InvalidArgumentException;
89
importorg.hyperledger.fabric.sdk.exception.TransactionException;
@@ -17,21 +18,37 @@ public class AppTest {
1718

1819
privatestaticStringCONNFIG_Orderer="grpc://192.168.188.111:7050";
1920
privatestaticStringCONNFIG_Peer0Org1="grpc://192.168.188.112:7051";
21+
privatestaticStringCONNFIG_Peer1Org1="grpc://192.168.188.113:7051";
22+
privatestaticStringCONNFIG_Peer0Org2="grpc://192.168.188.114:7051";
23+
privatestaticStringCONNFIG_Peer1Org2="grpc://192.168.188.115:7051";
2024
privatestaticStringCHANNELID="epointchannel";
25+
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liuwenru","liuwenru1","2017-12-12","江苏省张家港市","10000","江苏省苏州市张家港市国泰新点");
2126
@Before
2227
publicvoidSetup()throwsCryptoException,InvalidArgumentException {
2328
logger.debug("Fabric Test Init........");
2429
FabricAppfabricApp=newFabricApp();
2530
FabricApp.init();
26-
2731
}
32+
@Test
33+
publicvoidTestEpointChainCodeInster()throwsException {
34+
logger.debug("测试Fabric 插入功能");
35+
Channelchannel =FabricApp.client.newChannel(CHANNELID);
36+
channel.addPeer(FabricApp.client.newPeer("peer",CONNFIG_Peer0Org1));
37+
channel.addOrderer(FabricApp.client.newOrderer("orderer",CONNFIG_Orderer));
38+
channel.initialize();
39+
FabricApp.instertFabcar(channel,PERSONINFO);
40+
}
41+
42+
2843
@Test
2944
publicvoidTestEpointChainCodeQuery()throwsException {
45+
logger.debug("测试Fabric 查询功能");
3046
Channelchannel =FabricApp.client.newChannel(CHANNELID);
3147
channel.addPeer(FabricApp.client.newPeer("peer",CONNFIG_Peer0Org1));
3248
channel.addOrderer(FabricApp.client.newOrderer("orderer",CONNFIG_Orderer));
3349
channel.initialize();
34-
FabricApp.queryFabcar(channel,"liubo");
50+
FabricApp.queryFabcar(channel,PERSONINFO.getPerid());
3551
}
3652

53+
3754
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp