易截截图软件、单文件、免安装、纯绿色、仅160KB

关于dom4j、dom如何清理内存中已经加载的xml树

目前在使用DOM和dom4j对XML文件进行增删改查,如果我在同一个线程中做多次增删改操作,如何保证DOM内存同步和物理文件同步?又如何清理在内存中已加载的数据?
问题补充:
你说的这种就是很单纯的在一个线程中执行所有的操作,如果我是在单线程中操作,每做一次增删改查的一种,我都要保存到文件中去,如:
第一次:增加,保存文件。
第二次:删除,保存文件。
.....
问题补充:
我现在就是每次都重新读取这个文件生成Document对象,可是我怀疑他还是在内存中去读取的,所以想有个清理在内存中已加载的数据。
问题补充:
每次保存到文件后用Document = null;也不行??
这样做也不行。
问题补充:
这个需要确认一下,另外,如果真是从内存中读的话,你把内存中清理了,但是document还没有被GC,能保证它不会给你读个空的XML出来吗?
现在就是要把内存先进行清理,确认这部是否可行,可我不知道如何进行清理
问题补充:
呵呵,不知道是程序上的原因还是其它什么原因,我用W3C的DOM也是这样。期待....
问题补充:
终于经过努力找到了答案,就是在用W3C DOM,DOM4J,JDOM对xml文件做操作时(增删改)不要放在在tomcat 的webapps 下。
哎,即郁闷又显高兴!


相关文档:

C#小Tip:Xml操作简明手册 1


1)Xml文档示例(xmlsample.xml):
 
Code
<?xml version="1.0" encoding="iso-8859-1" ?>
<music>
  <song title="Oh,girl">
    <artist>The Chi-lites</artist>
    <genre>Soul</genre>
  &nb ......

lucene 解析xml 深未来技术

1、安装DOM4j
http://www.dom4j.org/
2、安装jaxen
http://jaxen.org/releases.html
3、代码
package extract;
import java.io.*;
import org.dom4j.*;
import org.dom4j.io.*;
import java.util.*;
public class XmlExtract {
    private SAXReader reader;
    private Docum ......

spring中读取xml配置文件、获取bean的几种方式

获取Spring框架管理的类实例的方法有多种,如下:
方法一:在初始化时保存ApplicationContext对象
代码:
ApplicationContext ac = new FileSystemXmlApplicationContext("applicationContext.xml");
ac.getBean("beanId");
说明:
这种方式适用于采用Spring框架的独立应用程序,需要程序通过配置文件手工初始化 ......

动态创建XML文档


var createXML = function (str) {
if (typeof DOMParser !== "undefined") {
return (new DOMParser()).parsefromString(str, "application/xml");
}else if (typeof ActiveXObject != "undefined") {
if (typeof arguments.callee.activeXString !== "string" ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号