2009-05-10 19 views

risposta

8

Va anche detto che è possibile esportare tabelle in Excel semplicemente emettendo una tabella HTML e impostando il tipo di risposta su application/vnd.ms-excel. Nessuna libreria esterna di alcun tipo.

Qualcosa di simile a questo:

<%@ page language="java" session="true" %> 
<%@ taglib uri="/WEB-INF/tld/response.tld" prefix="res" %> 
<res:setHeader name="Content-Type">application/vnd.ms-excel</res:setHeader> 
<res:setHeader name="Content-Disposition">attachment; filename=excel-test.xls</res:setHeader> 

<table> 
    <tr> 
     <td>foo</td> 
     <td>bar</td> 
    </tr> 
</table> 

Nota: questa risposta ha lo scopo di integrare e thisthis in quanto copre solo una parte dei casi (Excel).

+1

Nota che questo non è più accettato direttamente dalle ultime versioni di Excel. Piuttosto usa CSV (o JasperReports se vuoi avere anche il PDF). – BalusC

+0

Ho provato questo, il formato del file di output di Excel è HTML e non può essere aperto nel visualizzatore di Excel.Sto cercando una soluzione per esportare il file in formato excel da JSP. Qualche suggerimento? –

+0

@Geln, hai provato a utilizzare CSV o JasperReports come suggerito da @BalusC sopra? – Jonik

2

È diverso in ogni caso.

Per quanto riguarda la creazione di report, vorrei invece utilizzare uno strumento di reporting dedicato, in particolare Jasper Reports.

4

Direi JasperReports - che è open source - è la soluzione migliore. Ti consentirebbe di codificare il rapporto una volta, ma di esportarlo nei vari formati necessari. Supporta anche lo streaming diretto di HTML al browser, quindi è davvero un codice, una volta, usa qualsiasi cosa di tipo ovunque. Può anche scalare bene tramite JasperServer.

+0

è JasperReport libero – user93796

+0

è jasperreprt? – user93796

+0

Sì, è gratuito – rcampbell

0

Se il foglio di calcolo è molto semplice, l'esportazione come CSV è accettabile; è veloce e facile da codificare.

1

Penso che itext sia ancora meglio per la creazione di report, è più semplice, ho avuto un'esperienza (meno che sufficiente) con Jasper Reports, e mi è sembrato maldestro. OTOH itext è molto facile da usare per lo sviluppatore, e abbiamo avuto grandi report con esso, senza problemi.

È possibile anche creare rtf (leggibile da Word) da itext.

0

Docmosis e JODReports possono produrre PDF e DOC dal lato server (JSP, servlet, J2EE ecc.). Docmosis fornisce la formattazione/layout in un modello in modo da avere meno codice da fare e, eventualmente, anche i non sviluppatori che mantengono l'aspetto del report. Entrambi sono gratuiti.

1

Se si lavora con JSP, è possibile provare a utilizzare la libreria displaytag che consente di esportare tutto (pdf, excel, csv, xml). Puoi anche personalizzarli o ignorare gli esportatori, se lo desideri.

basta dare un'occhiata a questo indirizzo http://displaytag.sourceforge.net/10/export.html

Problemi correlati