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