﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-捕风之巢-文章分类-xml应用</title><link>http://www.blogjava.net/zhhp1314520/category/16151.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 23 Mar 2007 05:04:19 GMT</lastBuildDate><pubDate>Fri, 23 Mar 2007 05:04:19 GMT</pubDate><ttl>60</ttl><item><title>采用org.w3c.dom进行XML操作(一)（转载）</title><link>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom1.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Thu, 22 Mar 2007 06:59:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom1.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/105562.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom1.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/105562.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/105562.html</trackback:ping><description><![CDATA[
		<tr>
				<td class="fish_1" valign="center">
						<span class="style1">采用org.w3c.dom进行XML操作(一)</span>
				</td>
		</tr>
		<tr>
				<td>
						<table cellspacing="0" cellpadding="0" width="100%" border="0">
								<tbody>
										<tr>
												<td>
														<div align="right"> </div>
												</td>
										</tr>
								</tbody>
						</table>
						<span>
								<br />
								<p>XMLBuilder.java</p>
								<p> 用于创建ＤＯＭ，Root结点</p>
								<p>/********************************************************************<br /> * 项目名称    ：rochoc   &lt;p&gt;<br /> * 包名称      ：rochoc.xml.oper &lt;p&gt;<br /> * 文件名称    ：XmlBuilder   &lt;p&gt;<br /> * 编写者     ：luoc    &lt;p&gt;<br /> * 编写日期    ：2005-6-22    &lt;p&gt;<br /> * 程序功能（类）描述 ： 根据传入的XML文件生成Document和root结点&lt;p&gt;<br /> * <br /> * 程序变更日期   ：<br /> * 变更作者    ：<br /> * 变更说明    ：<br />********************************************************************/<br />package rochoc.xml.oper;</p>
								<p>import java.io.File;<br />import java.io.IOException;</p>
								<p>import javax.xml.parsers.DocumentBuilder;<br />import javax.xml.parsers.DocumentBuilderFactory;<br />import javax.xml.parsers.ParserConfigurationException;</p>
								<p>import org.apache.log4j.Logger;<br />import org.w3c.dom.Document;<br />import org.w3c.dom.Element;<br />import org.xml.sax.SAXException;</p>
								<p>/**<br /> * 类名：XmlBuilder  &lt;p&gt;<br /> * 类描述：根据传入的XML文件生成Document和root结点 &lt;p&gt;<br /> * 编写者 ：luoc&lt;p&gt;<br /> * 编写日期 ：2005-6-22&lt;p&gt;<br /> * 主要public成员变量：&lt;p&gt;<br /> * 主要public方法：   &lt;p&gt;<br /> **/</p>
								<p>public class XmlBuilder<br />{<br />    /**<br />     *构造函数说明：       &lt;p&gt;<br />     *参数说明：@param path   &lt;p&gt;<br />    **/<br />    public XmlBuilder(String path)<br />    {<br />        this.path=path;<br />        init();<br />    }<br />    <br />    /**<br />    * 方法名称：init&lt;p&gt;<br />    * 方法功能：初始化函数&lt;p&gt;<br />    * 参数说明： &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public void init()<br />    {<br />        buildDocument();<br />        buildRoot();<br />    }<br />    <br />    /**<br />    * 方法名称：buildDocument&lt;p&gt;<br />    * 方法功能：将XML文件生成Document &lt;p&gt;<br />    * 参数说明： &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    private void buildDocument()<br />    {<br />        DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();<br />        try<br />        {<br />            DocumentBuilder builder=factory.newDocumentBuilder();<br />            logger.debug("Construct document builder success.");<br />            doc=builder.parse(new File(path));            <br />            logger.debug("Build xml document success.");<br />        }catch(ParserConfigurationException e)<br />        {<br />            logger.error("Construct document builder error:"+e);<br />        }catch(SAXException e)<br />        {<br />            logger.error("Parse xml file error:"+e);<br />        }catch(IOException e)<br />        {<br />            logger.error("Read xml file error:"+e);<br />        }<br />    }<br />    <br />    /**<br />    * 方法名称：buildRoot&lt;p&gt;<br />    * 方法功能：生成XML的根结点&lt;p&gt;<br />    * 参数说明： &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    private void buildRoot()<br />    {<br />        root=doc.getDocumentElement();<br />    }<br />    <br />    /**<br />     * @return 返回 doc。<br />     */<br />    public Document getDoc()<br />    {<br />        return doc;<br />    }<br />    /**<br />     * @param doc 要设置的 doc。<br />     */<br />    public void setDoc(Document doc)<br />    {<br />        this.doc = doc;<br />    }<br />    /**<br />     * @return 返回 path。<br />     */<br />    public String getPath()<br />    {<br />        return path;<br />    }<br />    /**<br />     * @param path 要设置的 path。<br />     */<br />    public void setPath(String path)<br />    {<br />        this.path = path;<br />    }<br />    /**<br />     * @return 返回 root。<br />     */<br />    public Element getRoot()<br />    {<br />        return root;<br />    }<br />    /**<br />     * @param root 要设置的 root。<br />     */<br />    public void setRoot(Element root)<br />    {<br />        this.root = root;<br />    }<br />    /*全局变量*/<br />    private String path=null;//xml文件路径<br />    private Document doc=null;//xml文件对应的document<br />    private Element root=null;//xml文件的根结点<br />    private Logger logger=Logger.getLogger(getClass().getName());<br />}</p>
						</span>
				</td>
		</tr>
<img src ="http://www.blogjava.net/zhhp1314520/aggbug/105562.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2007-03-22 14:59 <a href="http://www.blogjava.net/zhhp1314520/articles/orgw3cdom1.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>采用org.w3c.dom进行XML操作(二)（转载）</title><link>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom2.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Thu, 22 Mar 2007 06:56:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom2.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/105560.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom2.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/105560.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/105560.html</trackback:ping><description><![CDATA[
		<tr>
				<td class="fish_1" valign="center">
						<span class="style1">采用org.w3c.dom进行XML操作(二)</span>
				</td>
		</tr>
		<tr>
				<td>
						<table cellspacing="0" cellpadding="0" width="100%" border="0">
								<tbody>
										<tr>
												<td>
														<div align="right">
																<span>
																</span> </div>
												</td>
										</tr>
								</tbody>
						</table>
						<span>
								<br />
								<p>XmlOper.java</p>
								<p> 用于操作ＸＭＬ文件，包括查找、新增、删除、修改结点</p>
								<p> /********************************************************************<br /> * 项目名称    ：rochoc   &lt;p&gt;<br /> * 包名称      ：rochoc.xml.oper &lt;p&gt;<br /> * 文件名称    ：XmlOper   &lt;p&gt;<br /> * 编写者     ：luoc    &lt;p&gt;<br /> * 编写日期    ：2005-6-22    &lt;p&gt;<br /> * 程序功能（类）描述 ： 对XML进行读写操作      &lt;p&gt;<br /> * <br /> * 程序变更日期   ：<br /> * 变更作者    ：<br /> * 变更说明    ：<br />********************************************************************/<br />package rochoc.xml.oper;</p>
								<p>import java.util.ArrayList;</p>
								<p>import org.apache.log4j.Logger;<br />import org.w3c.dom.Document;<br />import org.w3c.dom.Element;<br />import org.w3c.dom.Node;<br />import org.w3c.dom.NodeList;</p>
								<p>/**<br /> * 类名：XmlOper  &lt;p&gt;<br /> * 类描述：对XML文件进行读写操作,均为静态函数 &lt;p&gt;<br /> * 编写者 ：luoc&lt;p&gt;<br /> * 编写日期 ：2005-6-22&lt;p&gt;<br /> * 主要public成员变量：&lt;p&gt;<br /> * 主要public方法：   &lt;p&gt;<br /> **/</p>
								<p>public class XmlOper<br />{<br />    /**<br />     *构造函数说明：       &lt;p&gt;<br />     *参数说明：   &lt;p&gt;<br />    **/<br />    private XmlOper()<br />    {        <br />    }<br />    <br />    /**<br />    * 方法名称：getNodeList&lt;p&gt;<br />    * 方法功能：获取父结点parent的所有子结点&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@return &lt;p&gt;<br />    * 返回：NodeList &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static NodeList getNodeList(Element parent)<br />    {<br />        return parent.getChildNodes();<br />    }<br />    <br />    /**<br />    * 方法名称：getElementsByName&lt;p&gt;<br />    * 方法功能：在父结点中查询指定名称的结点集            &lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param name<br />    * 参数说明：@return &lt;p&gt;<br />    * 返回：Element[] &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static Element [] getElementsByName(Element parent,String name)<br />    {<br />        ArrayList resList=new ArrayList();<br />        NodeList nl=getNodeList(parent);<br />        for(int i=0;i&lt;nl.getLength();i++)<br />        {<br />            Node nd=nl.item(i);<br />            if(nd.getNodeName().equals(name))<br />            {<br />                resList.add(nd);<br />            }<br />        }<br />        Element [] res=new Element [resList.size()];<br />        for(int i=0;i&lt;resList.size();i++)<br />        {<br />            res[0]=(Element)resList.get(i);<br />        }        <br />        logger.debug(parent.getNodeName()+"'s children of "+name+<br />                "'s num:"+res.length);<br />        return res;<br />    }<br />    <br />    /**<br />    * 方法名称：getElementName&lt;p&gt;<br />    * 方法功能：获取指定Element的名称            &lt;p&gt;<br />    * 参数说明：@param element<br />    * 参数说明：@return &lt;p&gt;<br />    * 返回：String &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static String getElementName(Element element)<br />    {<br />        return element.getNodeName();<br />    }<br />    <br />    /**<br />    * 方法名称：getElementValue&lt;p&gt;<br />    * 方法功能：获取指定Element的值&lt;p&gt;<br />    * 参数说明：@param element<br />    * 参数说明：@return &lt;p&gt;<br />    * 返回：String &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static String getElementValue(Element element)<br />    {<br />        NodeList nl=element.getChildNodes();<br />        for(int i=0;i&lt;nl.getLength();i++)<br />        {<br />            if(nl.item(i).getNodeType()==Node.TEXT_NODE)//是一个Text Node<br />            {            <br />                logger.debug(element.getNodeName()+" has a Text Node.");<br />                return element.getFirstChild().getNodeValue();<br />            }<br />        }   <br />        logger.error(element.getNodeName()+" hasn't a Text Node.");<br />        return null;<br />    }<br />    <br />    /**<br />    * 方法名称：getElementAttr&lt;p&gt;<br />    * 方法功能：获取指定Element的属性attr的值            &lt;p&gt;<br />    * 参数说明：@param element<br />    * 参数说明：@param attr<br />    * 参数说明：@return &lt;p&gt;<br />    * 返回：String &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static String getElementAttr(Element element,String attr)<br />    {<br />        return element.getAttribute(attr);<br />    }<br />    <br />    /**<br />    * 方法名称：setElementValue&lt;p&gt;<br />    * 方法功能：设置指定Element的值            &lt;p&gt;<br />    * 参数说明：@param element<br />    * 参数说明：@param val &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static void setElementValue(Element element,String val)<br />    {<br />        Node node=element.getOwnerDocument().createTextNode(val);<br />        NodeList nl=element.getChildNodes();<br />        for(int i=0;i&lt;nl.getLength();i++)<br />        {<br />            Node nd=nl.item(i);<br />            if(nd.getNodeType()==Node.TEXT_NODE)//是一个Text Node<br />            {            <br />                  nd.setNodeValue(val);<br />                  logger.debug("modify "+element.getNodeName()+"'s node value succe.");<br />                  return;<br />            }<br />        }   <br />        logger.debug("new "+element.getNodeName()+"'s node value succe.");<br />        element.appendChild(node);        <br />    }<br />    <br />    /**<br />    * 方法名称：setElementAttr&lt;p&gt;<br />    * 方法功能：设置结点Element的属性&lt;p&gt;<br />    * 参数说明：@param element<br />    * 参数说明：@param attr<br />    * 参数说明：@param attrVal &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static void setElementAttr(Element element,<br />            String attr,String attrVal)<br />    {<br />        element.setAttribute(attr,attrVal);<br />    }<br />    <br />    <br />    /**<br />    * 方法名称：addElement&lt;p&gt;<br />    * 方法功能：在parent下增加结点child&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param child &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static void addElement(Element parent,Element child)<br />    {<br />        parent.appendChild(child);<br />    }<br />    <br />    /**<br />    * 方法名称：addElement&lt;p&gt;<br />    * 方法功能：在parent下增加字符串tagName生成的结点&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param tagName &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static void addElement(Element parent,String tagName)<br />    {        <br />        Document doc=parent.getOwnerDocument();<br />        Element child=doc.createElement(tagName);<br />        parent.appendChild(child);<br />    }<br />    <br />    /**<br />    * 方法名称：addElement&lt;p&gt;<br />    * 方法功能：在parent下增加tagName的Text结点，且值为text&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param tagName<br />    * 参数说明：@param text &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static void addElement(Element parent,String tagName,String text)<br />    {<br />        Document doc=parent.getOwnerDocument();<br />        Element child=doc.createElement(tagName);<br />        setElementValue(child,text);<br />        parent.appendChild(child);<br />    }<br />    <br />    /**<br />    * 方法名称：removeElement&lt;p&gt;<br />    * 方法功能：将父结点parent下的名称为tagName的结点移除&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param tagName &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public static void removeElement(Element parent,String tagName)<br />    {<br />        logger.debug("remove "+parent.getNodeName()+"'s children by tagName "+tagName+" begin...");<br />        NodeList nl=parent.getChildNodes();<br />        for(int i=0;i&lt;nl.getLength();i++)<br />        {<br />            Node nd=nl.item(i);<br />            if(nd.getNodeName().equals(tagName))<br />            {<br />                parent.removeChild(nd);<br />                logger.debug("remove child '"+nd+"' success.");<br />            }<br />        }<br />        logger.debug("remove "+parent.getNodeName()+"'s children by tagName "+tagName+" end.");<br />    }<br />    <br />    <br />    /*全局变量*/    <br />    static Logger logger=Logger.getLogger("XmlOper");<br />}</p>
						</span>
				</td>
		</tr>
<img src ="http://www.blogjava.net/zhhp1314520/aggbug/105560.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2007-03-22 14:56 <a href="http://www.blogjava.net/zhhp1314520/articles/orgw3cdom2.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>采用org.w3c.dom进行XML操作(三) (转载)</title><link>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Thu, 22 Mar 2007 06:50:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/105559.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/orgw3cdom.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/105559.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/105559.html</trackback:ping><description><![CDATA[
		<tr>
				<td class="fish_1" valign="center">
						<span class="style1">采用org.w3c.dom进行XML操作(三)</span>
				</td>
		</tr>
		<tr>
				<td>
						<table cellspacing="0" cellpadding="0" width="100%" border="0">
								<tbody>
										<tr>
												<td>
														<div align="right">
																<span>
																</span> </div>
												</td>
										</tr>
								</tbody>
						</table>
						<span>
								<br />
								<p>XmlCreater.java</p>
								<p> 用于创建ＸＭＬ文件</p>
								<p>/********************************************************************<br /> * 项目名称    ：rochoc   &lt;p&gt;<br /> * 包名称      ：rochoc.xml.oper &lt;p&gt;<br /> * 文件名称    ：XmlCreater   &lt;p&gt;<br /> * 编写者     ：luoc    &lt;p&gt;<br /> * 编写日期    ：2005-6-22    &lt;p&gt;<br /> * 程序功能（类）描述 ： 创建DOM并生成XML文件      &lt;p&gt;<br /> * <br /> * 程序变更日期   ：<br /> * 变更作者    ：<br /> * 变更说明    ：<br />********************************************************************/<br />package rochoc.xml.oper;</p>
								<p>import java.io.File;</p>
								<p>import javax.xml.parsers.DocumentBuilder;<br />import javax.xml.parsers.DocumentBuilderFactory;<br />import javax.xml.parsers.ParserConfigurationException;<br />import javax.xml.transform.Transformer;<br />import javax.xml.transform.TransformerConfigurationException;<br />import javax.xml.transform.TransformerException;<br />import javax.xml.transform.TransformerFactory;<br />import javax.xml.transform.dom.DOMSource;<br />import javax.xml.transform.stream.StreamResult;</p>
								<p>import org.apache.log4j.Logger;<br />import org.w3c.dom.Document;<br />import org.w3c.dom.Element;</p>
								<p>/**<br /> * 类名：XmlCreater  &lt;p&gt;<br /> * 类描述： 创建DOM并生成XML文件&lt;p&gt;<br /> * 编写者 ：luoc&lt;p&gt;<br /> * 编写日期 ：2005-6-22&lt;p&gt;<br /> * 主要public成员变量：&lt;p&gt;<br /> * 主要public方法：   &lt;p&gt;<br /> **/</p>
								<p>public class XmlCreater<br />{<br />    /**<br />     *构造函数说明：       &lt;p&gt;<br />     *参数说明：@param path  xml文件路径 &lt;p&gt;<br />    **/<br />    public XmlCreater(String path)<br />    {<br />        this.path=path;<br />        init();<br />    }<br />    <br />    /**<br />    * 方法名称：init&lt;p&gt;<br />    * 方法功能： 初始化函数           &lt;p&gt;<br />    * 参数说明： &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    private void init()<br />    {<br />        DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();<br />        try<br />        {<br />            DocumentBuilder builder=factory.newDocumentBuilder();<br />            doc=builder.newDocument();//新建DOM<br />        }catch(ParserConfigurationException e)<br />        {<br />            logger.error("Parse DOM builder error:"+e);<br />        }<br />    }<br />    <br />    /**<br />    * 方法名称：createRootElement&lt;p&gt;<br />    * 方法功能：创建根结点，并返回            &lt;p&gt;<br />    * 参数说明：@param rootTagName &lt;p&gt;<br />    * 返回：Element &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public Element createRootElement(String rootTagName)<br />    {     <br />        if(doc.getDocumentElement()==null)<br />        {<br />            logger.debug("create root element '"+rootTagName+"' success.");<br />            Element root=doc.createElement(rootTagName);<br />            doc.appendChild(root);<br />            return root;<br />        }<br />        logger.warn("this dom's root element is exist,create fail.");<br />        return doc.getDocumentElement();<br />    }<br />    <br />    /**<br />    * 方法名称：createElement&lt;p&gt;<br />    * 方法功能：在parent结点下增加子结点tagName&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param tagName &lt;p&gt;<br />    * 返回：Element &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public Element createElement(Element parent,String tagName)<br />    {<br />        Document doc=parent.getOwnerDocument();<br />        Element child=doc.createElement(tagName);<br />        parent.appendChild(child);        <br />        return child;<br />    }<br />    <br />    /**<br />    * 方法名称：createElement&lt;p&gt;<br />    * 方法功能：在parent结点下增加值为value的子结点tabName&lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param tagName<br />    * 参数说明：@param value &lt;p&gt;<br />    * 返回：Element &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public Element createElement(Element parent,String tagName,String value)<br />    {<br />        Document doc=parent.getOwnerDocument();<br />        Element child=doc.createElement(tagName);<br />        XmlOper.setElementValue(child,value);<br />        parent.appendChild(child);<br />        return child;<br />    }<br />    <br />    /**<br />    * 方法名称：createAttribute&lt;p&gt;<br />    * 方法功能：在parent结点下增加属性 &lt;p&gt;<br />    * 参数说明：@param parent<br />    * 参数说明：@param attrName 属性名<br />    * 参数说明：@param attrValue 属性值&lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public void createAttribute(Element parent,String attrName,String attrValue)<br />    {<br />        XmlOper.setElementAttr(parent,attrName,attrValue);        <br />    }<br />    <br />    /**<br />    * 方法名称：buildXmlFile&lt;p&gt;<br />    * 方法功能：根据DOM生成XML文件&lt;p&gt;<br />    * 参数说明： &lt;p&gt;<br />    * 返回：void &lt;p&gt;<br />    * 作者：luoc<br />    * 日期：2005-6-22<br />    **/<br />    public void buildXmlFile()<br />    {<br />        TransformerFactory tfactory=TransformerFactory.newInstance();<br />        try<br />        {<br />            Transformer transformer=tfactory.newTransformer();<br />            DOMSource source=new DOMSource(doc);<br />            logger.debug("New DOMSource success.");<br />            StreamResult result=new StreamResult(new File(path));<br />            logger.debug("New StreamResult success.");<br />            transformer.setOutputProperty("encoding","GBK");<br />            transformer.transform(source,result);<br />            logger.debug("Build XML File '"+path+"' success.");<br />        }catch(TransformerConfigurationException e)<br />        {<br />            logger.error("Create Transformer error:"+e);<br />        }catch(TransformerException e)<br />        {<br />            logger.error("Transformer XML file error:"+e);<br />        }<br />    }<br />    <br />    /**<br />     * @return 返回 doc。<br />     */<br />    public Document getDoc()<br />    {<br />        return doc;<br />    }<br />    /**<br />     * @param doc 要设置的 doc。<br />     */<br />    public void setDoc(Document doc)<br />    {<br />        this.doc = doc;<br />    }<br />    /**<br />     * @return 返回 path。<br />     */<br />    public String getPath()<br />    {<br />        return path;<br />    }<br />    /**<br />     * @param path 要设置的 path。<br />     */<br />    public void setPath(String path)<br />    {<br />        this.path = path;<br />    }<br />    /*全局变量*/<br />    private Logger logger = Logger.getLogger(getClass().getName());<br />    private Document doc=null;//新创建的DOM<br />    private String path=null;//生成的XML文件绝对路径<br />}</p>
						</span>
				</td>
		</tr>
<img src ="http://www.blogjava.net/zhhp1314520/aggbug/105559.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2007-03-22 14:50 <a href="http://www.blogjava.net/zhhp1314520/articles/orgw3cdom.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>DOM4J使用总结</title><link>http://www.blogjava.net/zhhp1314520/articles/dom4j_study.html</link><dc:creator>捕风</dc:creator><author>捕风</author><pubDate>Thu, 12 Oct 2006 02:23:00 GMT</pubDate><guid>http://www.blogjava.net/zhhp1314520/articles/dom4j_study.html</guid><wfw:comment>http://www.blogjava.net/zhhp1314520/comments/74728.html</wfw:comment><comments>http://www.blogjava.net/zhhp1314520/articles/dom4j_study.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/zhhp1314520/comments/commentRss/74728.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/zhhp1314520/services/trackbacks/74728.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: DOM4J是dom4j.org出品的一个开源XML解析包，它的网站中这样定义：		Dom4j is an easy to use, open source library for working with XML, XPath and XSLT on the Java platform using the Java Collections Framework and with full sup...&nbsp;&nbsp;<a href='http://www.blogjava.net/zhhp1314520/articles/dom4j_study.html'>阅读全文</a><img src ="http://www.blogjava.net/zhhp1314520/aggbug/74728.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/zhhp1314520/" target="_blank">捕风</a> 2006-10-12 10:23 <a href="http://www.blogjava.net/zhhp1314520/articles/dom4j_study.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>