Ola pessoal, sou novo aqui no GUJ e como percebi que as maiorias de minhas duvidas procuradas por ai sempre tinha seu Final em um link aqui para o GUJ resolvi fazer me registrar.
Sou novo no mundo Java e gostaria de saber como gravar uma lista Em XML !
packagebr.com.leadertech.scorm;importjava.io.File;importjava.io.FileWriter;importjava.io.IOException;importjava.io.PrintWriter;importjava.util.ArrayList;importjava.util.List;importcom.thoughtworks.xstream.XStream;publicclassGeradorXML{publicStringgerarXML(Cursocurso,StringnomeArq){Stringmsg="";XStreamxstream=newXStream();ModuloCursomodulos=newModuloCurso();curso.setModulos(modulos.modulosCursos(curso.getId()));StringcursoEmXML=xstream.toXML(curso);Filefile=newFile(nomeArq+".xml");if(file.exists()){msg="Arquivo existente !";}else{try{FileWriterwriter=newFileWriter(file);PrintWritersaida=newPrintWriter(writer);saida.print(cursoEmXML);saida.close();writer.close();msg="Arquivo xml Gerado com sucesso !";}catch(IOExceptione){// TODO Auto-generated catch blocke.printStackTrace();}}returnmsg;}}
Estou Recebendo Curso como parametro e utilizo o id para fazer uma consulta e me retornar os modulos que pertencem a esse Curso, e setar essa lista de modulos em Curso.
Algo+ou-dotipo(parapegarcadamódulo):XStreamxstream=newXStream();xstream.alias(“modulos”,Modulo.class);List<Modulo>modulos=newArrayList<Modulo>();Modulom;while(rs.next()){m=newModulo();m.setId_Modulo(…);//add mais alguma coisamodulos.add(m);}Eseta:modulo.setModulo(modulos);Strings=xstream.toXML(modulo);eparaexibir:Modulom=(Modulo)xstream.fromXML(s);for(Modulomod:m.getModulos()){System.out.println(mod.getId_Modulo());System.out.println(mod.getQualquerCoisa());//blablabla…}Olhaotutorialdelessobrealias,tenhocertezaquemataasuadúvida:<ahref="http://xstream.codehaus.org/alias-tutorial.html"class="onebox" target="_blank">http://xstream.codehaus.org/alias-tutorial.html</a>
I
icaroicaro
Então cara, cada modulo é add na classe ModuloCurso, e tem o metodo chamado modulosCursos para
preencher a lista de modulos.