¸Ä½øµÄ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
&
Ïà¹ØÎĵµ£º
ÉÏÎÄ̸µ½ÁËÊÊÅäÆ÷ģʽ£¬ÒªÊÇTargerÄ¿±ê½ÇÉ«ÓÐ20·½·¨£¬ÄÇôÿ¸öÊÊÅäÆ÷¶¼ÒªÈ¥ÊµÏÖ½Ó¿ÚÖÐÕâЩ·½·¨£¬ÕâÑù×ö¸Ð¾õÌ«·Ñ¾¢¡£ ÕâÖÖÇé¿öÏ£¬¿ÉÒÔ¿¼ÂÇʵÏÖ¸öĬÈÏÊÊÅäÆ÷£¬È»ºóʵ¼ÊµÄʵÏÖÄ¿±ê½ÇÉ«½Ó¿ÚµÄÀà¿ÉÒÔ¼¯³ÉÕâ¸öĬÈÏÊÊÅäÆ÷£¬È»ºóÖØдĬÈÏʵÏֵķ½·¨¼´¿É¡£ Ò»¡¢ÔÀíͼ ......
ÅäÖÃjava »·¾³±äÁ¿ºÜ¼òµ¥ £º
Ê×ÏÈ:
1¡¢Ë«»÷“ÎҵĵçÄÔ”
2¡¢Ë«»÷“¿ØÖÆÃæ°å”
3¡¢Ë«»÷“ϵͳ”
4¡¢µã»÷“¸ß¼¶”Ñ¡Ï£¬
5¡¢µã»÷“»·¾³±äÁ¿”°´Å¥
Æä´Î:
1¡¢±äÁ¿Ãû: path
±äÁ¿Öµ: C:\jdk1.6.0\bin;
2¡¢±äÁ¿Ãû: classpath
±äÁ¿Öµ: .;%JAVA_HOME%\lib\ ......
£¨1£©Ìí¼Ó±àÒëjava²Ëµ¥
1¡¢´ò¿ª ¸ß¼¶£>¹¤¾ßÅäÖÃ
2¡¢ÔÚ“ÃüÁîÀ¸”ÀïÊäÈë javac %n%e £¨%nΪÎļþÃû²»´øÀ©Õ¹Ãû£¬%eΪÀ©Õ¹Ãû£©
3¡¢ÔÚ“¹¤×÷Ŀ¼”ÉÏÌî %p (±íʾÎļþËùÔÚĿ¼)
4¡¢ÔÚ“²Ëµ¥ÏîÄ¿Ãû³Æ”ÉÏÊäÈë ±àÒëjava³ÌÐò £¨ÏÖÔÚÔڲ˵¥ÉϵÄÃû³Æ£©
5¡¢Ñ¡Ôñ“±£´æµ±Ç°Îļþ”¸´Ñ¡¿ ......
°üÀ¨Èý¸öÎļþ£ºstudentInfo.xml(´ý½âÎöµÄxmlÎļþ), Dom4jReadExmple.java(½âÎöµÄÖ÷ÒªÀà), TestDom4jReadExmple.java(²âÊÔ½âÎöµÄ½á¹û) £¨ÓÉÓÚʹÓÃcsdn blog×Ô´øµÄ´úÂëÕ³Ìù¹¤¾ß»á³¯Àï¼ÓÈëһЩ"..."×Ö·û£¬ËäÈ»ÀûÓڲ鿴£¬µ«ÊDz»ÀûÓÚ°Ñ´úÂëcopy³öÀ´ÔËÐУ¬¶øÇ××ÔÔËÐдúÂë¶Ô³ÌÐòÔ±À´ËµÊǺÜÖØÒªµÄ£¬¹ÊûÓÐʹÓÃcsdn blog×Ô´øµÄ´úÂëÕ³ ......
JAXBContext jc = JAXBContext.newInstance(ICPBuildSummaryXO.class);
Unmarshaller u = jc.createUnmarshaller();
ICPBuildSummaryXO xo = (ICPBuildSummaryXO) u.unmarshal(node);
ICPBuildSummary summary = new ICPBuildSummary();
Bean ......