基礎方法:DOM(平臺無關的官方解析方式)、SAX(基於事件驅動的解析方式)
擴展方法:JDOM、DOM4J(在基礎的方法上擴展出的,只有在java中能夠使用的解析方法)
DOM:
一次性將整個xml文件加載到內存中,形成DOM樹
優點:
形成了樹結構,直觀好理解,代碼更容易編寫 解析過程中樹結構保留在內存中,方便修改
缺點:
當xml文件較大時,對內存消耗比較大,容易影響解析性能並造成內存溢出
SAX:
逐條語句判斷解析
優點:
採用事件驅動模式,對內存消耗比較小 適用於只需要處理xml中數據時
缺點:
不易編碼 很難同時訪問同一個xml中的多處不同數據
JDOM:
僅使用具體類而不使用接口
API大量使用了Collections類
DOM4J:
JDOM的一種智能分支,它合併了許多超出基本XML文檔表示的功能
DOM4J使用接口和抽象基本類方法,是一個優秀的Java XML API
具有性能優異、靈活性好、功能強大和極端易使用的特點
是一個開放源代碼的軟件
DOM4J:JDOM的一種智能分支,它合併了許多超出基本XML文檔表示的功能 DOM4J使用接口和抽象基本類方法,是一個優秀的Java XML API 具有性能優異、靈活性好、功能強大和極端易使用的特點 是一個開放源代碼的軟件
DOM4J在靈活性和對複雜xml的支持上都要強於DOM
DOM4J的應用範圍非常的廣,例如在三大框架的Hibernate中是使用DOM4J的方式解析文件的。
DOM是w3c組織提供的一個官方解析方式,在一定程度上是有所應用的。
當XML文件比較大的時候,會發現DOM4J比較好用
1.JUnit:Java提供的單元測試;@Test註解;採用JUnit不需要程序入口main方法
2.性能測試結果:幾kB的xml文件;建議使用DOM4J解析