用Groovy把SQL變成XML
groovy, opensource, sql, xml, xslfo at August 5th, 2005 by 小影
之前討論過怎樣用XSL-FO把一個XML檔案轉換成任何文件檔案,但在使用XSL-FO之前有一個問題:怎樣制作一個以資料為本的XML檔案?
你當然可以先用JDBC連接資料庫再用println把資料逐句列印出來,但我要說的是更優雅和簡潔的方法:用Groovy去把SQL轉換為XML!
假如你還沒有聽過Groovy,你只需知道這是一個在JVM中執行的動態腳本語言,它的特色包括靈活的語言特性、大量可用的library (包括所有Java的library),可編譯為靜態Java Classes等等…它的語法很簡單,就算不懂Groovy也能看懂這篇內的例子!
以下是用Groovy向資料庫取資料並以XML輸出:
真是太簡單了,認真地看就會發現真正地在工作的只有三行:
15:建立資料庫的連線
18:建立制作XML的MarkupBuilder
21:把Query結果以XML形式輸出
就這樣,沒有JDBC也沒有JAXP(呃…至少是表面上),SQL就變成了XML!
下面是示例的XML輸出:
對了,幾乎任何形式的資料也可用這麼簡單的方法由資料庫取出,配合XSLT和XSL-FO,任何報表也可以在幾句內攪定,工作真是太簡單了!
相關連結:
- XML as a Bridge between SQL and Web Applications – Oracle的XML工具的範例
- Groovy SQL – Groovy的SQL範例,其中Test Case對明白Groovy SQL很有用
- Groovy – Groovy的主頁
- XSL-FO,新的排版標準
- Practically Groovy: JDBC programming with Groovy
– 簡介XSLT和XSL-FO的應用,把資料轉換為不同類型的輸出