2017-05-04 4 views
0
public void getPersons() 
{ 
Session s = sessionFactory.openSession(); 
Criteria c = s.createCriteria(Person.class); 
c.add(Restrictions.isNotNull("id")); 
List<Person> al = c.list(); 
StringWriter writer = new StringWriter(); 
CSVWriter csvWriter = new CSVWriter(writer, ',', '\''); 
for (Person person : al) { 
System.out.println(person.getName()+"------------------"+al);  
csvWriter.writeAll(person);   // this also not work 
} 

Methode Erstellen von Daten und in csv zu lesen .was ich hier verwenden sollte? Mithilfe von csvWriter.writeAll() erstellt werden soll ‚‘ seprated Datei Verfahren writeAll (List) in der Typ CSVWriter ist nicht anwendbar für die Argumente (Person)Ausgabe ahaving während csvwriter

Antwort

0

Wenn Person keine Liste von String-Arrays ist, wird dies nicht funktionieren.

Sie benötigen eine Quelle für die CSVWriter (eine Liste oder Iterable von String [] s), die Sie aus der Liste der Personen erstellen:

List<String[]> employees = new ArrayList<String[]>(); 
for (Person person : al) { 
    employees.add(new String[] {person.getEmployeeId(), person.getName(), person.getEtc.()}) 
} 

auch immer Sie produzieren es, Sie passieren kann diese writeAll:

csvWriter.writeAll(employees); 

... und schließen Sie den Schriftsteller:

csvWriter.close(); 
Verwandte Themen