0
私は意のままに/アンマーシャリングそれをマーシャリングできるように、POJOこのJSONをしようとしてきたが、私はその部分行うには方法を見つける難しさを持っている:あなたのようジャクソン複雑なPOJO
{
"jsonrpc": "2.0",
"method": "deploy",
"params": {
"type": 1,
"chaincodeID": {
"path": "github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02"
},
"ctorMsg": {
"args": [
"init",
"a",
"1000",
"b",
"2000"
]
},
"secureContext": "lukas"
},
"id": 1
}
をその中に2つのオブジェクトがJSON配列である「params」プロパティがあることがわかります。
public class JsonPayload {
private String jsonrpc;
private String method;
private ??? params;
private int id;
public JsonPayload(String jsonrpc, String method, ??? params, int id) {
this.jsonrpc = jsonrpc;
this.method = method;
this.params = params;
this.id = id;
}
public String getJsonrpc() {
return jsonrpc;
}
public void setJsonrpc(String jsonrpc) {
this.jsonrpc = jsonrpc;
}
public String getMethod() {
return method;
}
public void setMethod(String method) {
this.method = method;
}
public ??? getParams() {
return params;
}
public void setParams(??? params) {
this.params = params;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
私の質問は、POJOの中でParamsをモデル化する方法です。私は2つのオブジェクトを作成してそれに渡すことができると思うが、単純なJSONマーシャリング/アンマーシャリングを望むよりもはるかに複雑になる。
これを行う簡単な方法はありますか?ジャクソンの有無にかかわらず?
class Params {
Integer type;
@JsonProperty("chaincodeID")
ChainCode chainCode;
@JsonProperty("ctorMsg")
private Message message;
String secureContext;
}
class ChainCode{
String path;
}
class Message {
List<String> args;
}
はあなたがすべてでparams
を使用する予定がない場合、または、あなたは気にしない:
名前付きの型指定された属性を必要としない場合は、Mapが必要です。しかし、3つのプロパティを持つ別のPOJOを作成するのはとても複雑ですか? –