PDA

View Full Version : [java-jsp] esportare dati in excel


heijonny
04-06-2005, 11:24
Ciao a tutti, ho un consiglio da chiedervi...
Ho sviluppato una piccola pittaforma web in jsp; l'utente fa operazioni di data entry utilizzando le pagine jsp, che vanno a scrivere su un DB mysql.
L'utente ha anche la possibilità di andare a riprendere i dati, richiamandoli da funzioni che contengono query preimpostate, e i dati vengono stampati a video nella pagine jsp.
Ora, se io volessi fare in modo che l'utente abbia la possibilità di esportare i dati in un file excel, come posso fare? Qualcuno ha qualche idea?

Grazie

:muro: :help: :muro:

Mixmar
04-06-2005, 16:29
Puoi utilizzare le librerie POI-HSSF del progetto Apache (http://jakarta.apache.org/poi/hssf/index.html). Consentono di scrivere e leggere su file Excel (XLS). Personalmente non le ho mai provate, ma le ho viste funzionare e mi sembrano buone.

Ovviamente devi scriverti tutta la parte di programma che esporta i dati dal DB generando il file Excel: non mi vengono in mente però soluzioni più semplici, a meno che tu non faccia scrivere i dati in un file CSV direttamente da Java e poi lo importi in Excel... però non sarebbe il massimo dell'eleganza.

heijonny
06-06-2005, 17:23
Ciao,
grazie per l'informazione...
Avrei un'altra domanda, se non chedo troppo... eventualmente, in che modo posso tirar fuori un file .csv con java?

theClimber
06-06-2005, 20:05
Puoi utilizzare le librerie POI-HSSF del progetto Apache (http://jakarta.apache.org/poi/hssf/index.html). ...

Usate e, nonostante il nome non sono male (HSSF = Horrible Spread Sheet Format :read: ). Hanno alcune limitazioni su formule e formattazioni complesse. Potresti fare una servlet che restituisca il file con il mime type e l'estensione opportuna.

Se scegli la via del file .csv, questo e' un semplice file di testo, con le colonne separate da virgole. Ad esempio:

Nome,Altezza,Peso
Tizio,170cm,80kg
Caio,190cm,90kg


Lo puoi tranquillamente scrivere con una JSP, e' puro testo.

Ciao

heijonny
07-06-2005, 13:31
...perdonate la mia inesperienza...
qualcuno mi può fornire qualche riga di esempio su come fare una servlet che crei un file csv o di testo?
Grazie