pátek 9. listopadu 2007

Jak na Excel 1 - úvod

Už se mi několikrát stalo, že v zákaznických požadavcích na aplikaci byl i export tabulek do Excelu nebo naopak import dat z .xls souborů, proto bych chtěl napsat pár záznamů do blogu i na toto téma.

Existuje několik různých přístupů jak v Javě pracovat s dokumenty Excelu, každý má svá pro i proti. Zde je stručný přehled:

přístupvýhodynevýhody
JNI a Excel Automation (COM)
  • jednoduše implementovatelné
  • "úplná" funkcionalita (v rámci toho co Excel nabízí přes komponentový model)
  • nehrozí nekompatibilita (když nepočítám některé nekompatibility mezi jednotlivými verzemi Excelu)
  • musí být nainstalovaný Excel
  • přicházíme o platformní nezávislost (JNI)
  • většina řešení pouze pro windows
Java DCOM + Excel Automation
  • nehrozí nekompatibilita (když nepočítám některé nekompatibility mezi jednotlivými verzemi Excelu)
  • nevyužívá JNI
  • musí být povolen DCOM přístup na počítač s nainstalovaným Excelem
  • větší časová náročnost (síťová komunikace)
  • nezanedbatelné nároky na správu sítě (povolení DCOM přístupu, sdílení souborů mezi serverem a klientem, ...)
Nástroje třetích stran (např. OpenOffice.org SDK)
  • vysoká kompatibilita s Excelem
  • velká funkcionalita (např. podpora mnoha dalších formátů)
  • musí být nainstalovaný dodatečný software
  • může záviset na JNI
  • slabši podpora některých funkcí (makra apod.)
Excel JDBC driver
  • přístup k datům přes jednoduché rozhraní (JDBC)
  • čistá Java
  • velmi omezená funkcionalita
Java knihovny pro práci s XLS soubory
  • čistá Java
  • nezávisí na externím software
  • (často) zdrojové kódy k dispozici
tento přístup používám nejčastěji a nejraději
  • většinou jen základní funkcionalita
  • může nastat problém s komplikovanějšími soubory

Na jednotlivé přístupy se blíže podíváme v příštích dílech tohoto seriálu

Žádné komentáře: