2012-08-10 12 views
6

Sto utilizzando XStream per convertire XML in oggetti. Sto convertendo un grande xml. Ho incontrato sotto due dichiarazioni.Prestazioni del driver Xstream

XStream xstream = new XStream(new DomDriver()); 

XStream xstream = new XStream(new StaxDriver()); 

Dal momento che sto utilizzando un grande xml per la conversione, quale risultato migliori prestazioni? perché?

Per favore aiuto.

+0

E BinaryStreamDriver? – guilhermecgs

risposta

3

Staxdriver dovrebbe funzionare meglio in quanto utilizza la tecnologia parser pull che è la tecnologia più veloce per l'analisi di xml e utilizza meno memoria in quanto il documento non viene caricato in memoria come per dom one.

+0

Per impostazione predefinita XStream utilizza XppDriver che utilizza anche parser di pull. Nei miei test su dati di produzione reali, StaxDriver è circa il 10% più lento di XppDriver XStream predefinito su serializzazione e deserializzazione. – Sergio

2

Lo StaxDriver analizzerà progressivamente i dati in modo che possano essere più efficienti. Funziona solo con parser Stax. Se si desidera utilizzare un parser DOM, è necessario utilizzare DomParser.

Problemi correlati