¸Ä½øµÄJava XMLÎļþºÏ²¢¹¤¾ßÀà
¹¤×÷ÖÐÓöµ½ÐèÒªºÏ²¢XMLµÄÎÊÌ⣬Ëì´ÓÍøÉϲéÕÒÏà¹Ø×ÊÁÏ£¬
1¡¢ ¡¶ XML merging made easy
¡·
2 ¡¢¡¶javaÖкϲ¢xmlÎĵµµÄÉè¼ÆÓëʵÏÖ
¡·
²âÊÔºó·¢ÏÖ¾ù²»·ûºÏʵ¼ÊÐèÇó£¬Êµ¼ÊÐèÇóÈçÏ£º
file1.xml:
<root>
<a>
<b name="1"/>
</a>
<d />
<e id='1' />
</root>
file2.xml:
<root>
<a>
<b name="22"/>
</a>
<d name="qq"/>
<e id='1' />
</root>
ºÏ²¢ºóÐèÒªµÃµ½£º
<root>
<a>
<b name="22" />
<b name="1" />
</a>
<d name="qq" />
<e id="1" />
<d />
</root>
»ùÓÚ¡¶javaÖкϲ¢xmlÎĵµµÄÉè¼ÆÓëʵÏÖ
¡·µÄ½éÉܶԴúÂë½øÐиĽø£¬Íê³ÉÁ˴˹¦ÄÜ£¬´úÂëÈçÏ£º
package davyxie;
import java.io.File;
import java.util.Properties;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.DOMException;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
/**
* XMLÎļþºÏ²¢¹¤¾ßÀà
* @author davyxie
*/
public class XMLMergeUtil {
/**
* XMLÎļþµÄºÏ²¢´¦Àí
* @param mainFileName ´ýºÏ²¢´¦ÀíµÄxmlÎļþ£¬ºÏ²¢ºó½«¸üдËÎļþ
* @param subFilename ±»ºÏ²¢µÄxmlÎļþ
* @return ºÏ²¢³É¹¦·µ»Øtrue£¬·ñÔò·µ»Øfalse
* @throws Exception
&
Ïà¹ØÎĵµ£º
£¨1£©Ìí¼Ó±àÒëjava²Ëµ¥
1¡¢´ò¿ª ¸ß¼¶£>¹¤¾ßÅäÖÃ
2¡¢ÔÚ“ÃüÁîÀ¸”ÀïÊäÈë javac %n%e £¨%nΪÎļþÃû²»´øÀ©Õ¹Ãû£¬%eΪÀ©Õ¹Ãû£©
3¡¢ÔÚ“¹¤×÷Ŀ¼”ÉÏÌî %p (±íʾÎļþËùÔÚĿ¼)
4¡¢ÔÚ“²Ëµ¥ÏîÄ¿Ãû³Æ”ÉÏÊäÈë ±àÒëjava³ÌÐò £¨ÏÖÔÚÔڲ˵¥ÉϵÄÃû³Æ£©
5¡¢Ñ¡Ôñ“±£´æµ±Ç°Îļþ”¸´Ñ¡¿ ......
ÔÌâÈçÏ£ºÓÃ1¡¢2¡¢2¡¢3¡¢4¡¢5ÕâÁù¸öÊý×Ö£¬ÓÃjavaдһ¸ö³ÌÐò£¬´òÓ¡³öËùÓв»Í¬µÄÅÅÁУ¬È磺512234¡¢412345µÈ£¬ÒªÇó£º"4"²»ÄÜÔÚµÚÈý룬"3"Óë"5"²»ÄÜÏàÁ¬¡£
½âÌâ˼·£º
ºÜÃ÷ÏÔ£¬ÕâÊÇÒ»¸öµÝ¹éËã·¨¡£ÎÒÃÇ¿ÉÒÔÅÅÁн«Õâ6¸öÊý°´´ÓСµ½´óµÄ˳ÐòÅÅһϣ¬Èç¹ûÊÇ1,2,3,4,5,6£¬ÄÇô»áÓÐ1 ......
JAXBContext jc = JAXBContext.newInstance(ICPBuildSummaryXO.class);
Unmarshaller u = jc.createUnmarshaller();
ICPBuildSummaryXO xo = (ICPBuildSummaryXO) u.unmarshal(node);
ICPBuildSummary summary = new ICPBuildSummary();
Bean ......
¼øÓÚÍøÉ϶ÔJavaµÄ¶ÑÕ»Çø·Ö£¬ÖÚ˵·×ç¡£¬ÓеİÑC++µÄ¶ÑÕ»Ò²»ì½øÀ´£¬ÓеÄûÓзÖÇåStack£¬HeapµÄÖÐÎÄ·Ò룬¸ãµÃÎÒ°ÑStackµ±×÷¶Ñ£¬Heapµ±×÷Õ»£¬»ìÂÒÁË£¡×òÌì²Î¼ÓÒ»ÍâÆóµÄ±ÊÊÔ£¬Ñ¡ÔñÓ¢ÎÄ´ð°¸Ê±£¬Ñ¡´íÁË£¬ÖªµÀ´ð°¸ÊǶѣ¬È´Ñ¡ÔñÁËStack£¡½ñÌ죬¾ö¶¨°ÑÁ½ÕßÇø·ÖÇå³þ£¡
&nbs ......