我有一个返回给我的字符串,该字符串格式为JSON。字符串如下
{ "Type" : "Notification". "MessageId" : "9343.....". "TopicArn" : "arn-....." "......" }
我创建了一个自定义对象,我想将此字符串解析为
public class AmazonSNSMessage
{
private String Type;
private String Notification;
private String MessageId;
private String TopicArn;
private String Subject;
private String Message;
private String Timestamp;
private String SignatureVersion;
private String Signature;
private String UnsubscribeURL
// And all the appropriate get/set methods
}
Java中是否有JSON反序列化器将采用字符串并创建AmazonSNSMessage的实例?
C#通过调用此行来做到这一点
AmazonSNSMessage b = JsonConvert.DeserializeObject<AmazonSNSMessage>(TheString);
理想情况下,我想要类似的东西。
最佳答案
Jackson可以做到:
final ObjectMapper mapper = new ObjectMapper();
final AmazonSNSMessage message
= mapper.readValue(yourInput, AmazonSNSMessage.class);
由于您的字段名称与JSON相同,它将自动运行!
如果您有更复杂的场景,则可以使用注释,自定义解串器等。