我有負責解析XML事件並將它們推送到我們的RabbitMQ總線的web應用程序的內存問題。這個web應用程序在一個servlet中接收XML事件,我們將它解碼並推送到我們的總線,然後我們確認發件人。我們正在使用java 5中的org.xml.sax.helpers.DefaultHandler
,但看起來Stax(帶有XMLStreamReader)好得多,仍然很容易閱讀,但我們需要將我們的代碼遷移到java6(請參閱SO上的this question)。它值得嗎?在java中解析XML的內存效率最高的方法是什麼?
在Java中解析XML的內存效率最高的方法是什麼?我們正在尋找一個快速,高效的內存和易於編寫/讀取代碼。這是否存在?
我無法相信一個SAX解析器造成內存問題。由於它的性質,SAX是基於流的,因此內存開銷非常低。你在做什麼像緩存整個文檔在內存中? –
我們沒有在內存中緩存文檔,我們正在閱讀流。代碼很好,但現在我們收到了更多的事件,並且我們收到了更多... –