更新时间:2023-03-07 GMT+08:00
链代码结构
本章以Java语言为例来介绍。链代码即一个Java项目,创建好文件后进行函数开发等操作。
约束与限制
Java链代码仅支持Fabric 2.2及以上版本。
链代码接口
链代码启动必须通过调用shim包中的start方法。实际开发中, 您需要自行定义一个类,来继承ChaincodeBase。以下为继承时必须重写的方法:
public class SimpleChaincodeSimple extends ChaincodeBase {
@Override
public Response init(ChaincodeStub stub) {
}
@Override
public Response invoke(ChaincodeStub stub) {
}
}
- init方法:在链代码实例化或升级时被调用,完成初始化数据的工作。
- Invoke方法:更新或查询帐本数据状态时被调用, 需要在此方法中实现响应调用或查询的业务逻辑。
链代码结构
Java语言的链代码结构如下:
package main
// 引入必要的包,系统自动操作,只要在maven或gradle中配置即可
import org.hyperledger.fabric.shim.ChaincodeBase;
import org.hyperledger.fabric.shim.ChaincodeStub;
public class SimpleChaincodeSimple extends ChaincodeBase {
@Override
public Response init(ChaincodeStub stub) {
// 在该方法中实现链代码初始化或升级时的处理逻辑
// 编写时可灵活使用stub中的API
}
@Override
public Response invoke(ChaincodeStub stub) {
// 在该方法中实现链代码运行中被调用或查询时的处理逻辑
// 编写时可灵活使用stub中的API
}
//主函数,需要调用shim.Start()方法
public static void main(String[] args) {
new SimpleChaincode().start(args);
}
}
父主题: Java语言链代码开发