Java DynamoDBMarshaller用于通用列表
我不熟悉编组和解编组。我想使用DynamoDBMashaller封送和解封送一个通用列表Java DynamoDBMarshaller用于通用列表,java,generics,marshalling,amazon-dynamodb,unmarshalling,Java,Generics,Marshalling,Amazon Dynamodb,Unmarshalling,我不熟悉编组和解编组。我想使用DynamoDBMashaller封送和解封送一个通用列表 我有以下几节课要上 public class ListObjectConverter implements DynamoDBMarshaller<List<?>> { private static final Gson GSON = new Gson(); @Override public String marshall(List<?> val
我有以下几节课要上
public class ListObjectConverter implements DynamoDBMarshaller<List<?>>
{
private static final Gson GSON = new Gson();
@Override
public String marshall(List<?> value) {
Type listOfObjectType = new TypeToken<List<?>>(){}.getType();
return GSON.toJson(value, listOfObjectType);
}
@Override
public List<?> unmarshall(Class<List<?>> clazz, String value) {
Type listOfObjectType = new TypeToken<List<?>>(){}.getType();
return GSON.fromJson(value, listOfObjectType);
}
}
公共类ListObjectConverter实现DynamoDBMarshaller>(){}.getType();
返回GSON.toJson(值,listOfObjectType);
}
@凌驾
公共列表解组(类您需要强制转换
List<FeedSource> lst= new ArrayList<FeedSource>();
lst= loc.unmarshall((Class<List<FeedSource>>) lst.getClass(), marshalled);
List lst=new ArrayList();
lst=loc.unmarshall((Class)lst.getClass(),已编组);
它不起作用。它说:不兼容的类型:java.lang.Class无法转换为java.lang.Class
List<Source> fsl1 = loc.unmarshall(List.class , marshalled);
List<FeedSource> lst= new ArrayList<FeedSource>();
lst= loc.unmarshall((Class<List<FeedSource>>) lst.getClass(), marshalled);