1
jsonの文字列をjavaのユーザー定義オブジェクトにキャストするときに、私は例外以下のgetingを助けてくれます。例外org.codehaus.jackson.map.exc.UnrecognizedPropertyExceptionを解決するには
org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "acknowledgedby" (Class com.xchange.model.XchangeOutboundMessage), not marked as ignorable
at [Source: [email protected]; line: 1, column: 34] (through reference chain: com.xchange.model.XchangeOutboundMessage["acknowledgedby"])
また、私はStackOverflowの上ここに多くのリンクを発見し、すべてのは、モデルのフィールドに@JsonIgnore注釈のために推奨していますが、私はこれを無視することはできません。
public List getOutBoundMessageList(){
List list=new ArrayList();
ObjectMapper mapper = new ObjectMapper();
XchangeOutboundMessage xchangeOutboundMessage=null;
String json1=null;
try {
cluster = Cluster.builder().addContactPoint(contactPoints).build();
session = cluster.connect(keySpaceName);
cassandraOps = new CassandraTemplate(session);
String queryString="Select JSON * from XchangeOutboundMessage";
ResultSet result = session.execute(queryString);
int i=0;
String json1=null;
for(Row row:result) {
json1 = row.getString(i);
xchangeOutboundMessage = mapper.readValue(json1, XchangeOutboundMessage.class);
list.add(xchangeOutboundMessage);
i++;
}
} catch (Exception e) {
e.printStackTrace();
}
return list;
}
}
Modelクラスのフィールドとゲッター、例外occuring
private String acknowledgedBy;
public String getAcknowledgedBy() {
return acknowledgedBy;
}
public void setAcknowledgedBy(String acknowledgedBy) {
this.acknowledgedBy = acknowledgedBy;
}
Modelクラス全体を共有して問題を明確に理解しているとします。 –