這個方法最大的好處在于可以隨心所欲的控制DOM Tree中的內(nèi)容輸出到輸出介質中的格式,但是光靠TransformerFactory類和Transformer類并不能實現(xiàn)這個功能,還需要依賴OutputKeys類的幫助。 完整的例子請參考下列文件: AddRecord2.java(見附件)、user.xml(見附件)。該例子的運行環(huán)境為:Windows XP Professional、JDK 1.3.1。為了能夠正常編譯運行AddRecord2.java這個程序,你需要到網(wǎng)址http://java.sun.com去下載安裝JAXP 1.1或者Java XML Pack(Java XML Pack已經(jīng)內(nèi)含JAXP了)。
public static final java.lang.String METHOD 可以設為"xml"、"html"、"text"等值。
public static final java.lang.String VERSION 所遵循規(guī)范的版本號,如果METHOD設為"xml",那么它的值應該設為"1.0",如果METHOD設為"html",那么它的值應該設為"4.0",如果METHOD設為"text",那么這個輸出屬性會被忽略。
public static final java.lang.String ENCODING 設置輸出時所采用的編碼方式,比如"GB2312"、"UTF-8"等等,如果將其設置為"GB2312",可以解決所謂的"漢字問題"。
public static final java.lang.String OMIT_XML_DECLARATION 設置輸出到XML文檔中時是否忽略XML聲明,亦即類似于:
我們編寫了一個新的程序,其中應用了OutputKeys類,用以控制XSLT引擎的輸出屬性,該程序的架構和前一個程序(AddRecord3.java)大致相同,不過輸出結果略有不同。完整的代碼請參考下列文件: AddRecord3.java(見附件)、user.xml(見附件)。該例子的運行環(huán)境為:Windows XP Professional、JDK 1.3.1。為了能夠正常編譯運行AddRecord3.java這個程序,你需要到網(wǎng)址http://java.sun.com去下載安裝JAXP 1.1或者Java XML Pack(Java XML Pack內(nèi)含JAXP了)。 方法四:使用Xalan XML Serializer