下のjackson deserializeに複数のクラスを追加したいと思います。しかし、どうすればいいのですか?以下はサンプルコードです。Java - クラス<? Collection>
XmlMapper mapper = new XmlMapper();
JaxbAnnotationModule module = new JaxbAnnotationModule();
mapper.registerModule(module);
AnnotationIntrospector introspector = new JaxbAnnotationIntrospector(mapper.getTypeFactory());
mapper.setAnnotationIntrospector(introspector);
TypeFactory typeFactory = mapper.getTypeFactory();
Class<? extends Collection> list;
MapType mapType = typeFactory.constructRawCollectionType(list);
File is = new File("myXMLFile.xml");
ArtworkContentMessageType je = mapper.readValue(is,mapType);
以下の部分は混乱しています。リストにクラスを追加するには?
Class<? extends Collection> list;
MapType mapType = typeFactory.constructRawCollectionType(list);
マルチプルクラス(例:Body.classとP.class)を追加するにはどうすればよいですか?私はクラスタイプではないので、正しいオブジェクトではなく、以下を試してみます。
List<Class> clazz = new ArrayList<>();
clazz.add(ArtworkContentMessageType.class);
clazz.add(Body.class);
clazz.add(P.class);
MapType mapType = typeFactory.constructRawCollectionType(clazz);
あなたが何を求めているのかわからない。リストまたはClass <?コレクションを拡張する> ?? –
@ChrisNeveその約<? extends Collection>型を拡張します。 – Sh4m
あなたの質問に答えた場合、受け入れられた回答としてマークしてください。 –