zoukankan      html  css  js  c++  java
  • 添加hibernate使用DOM解析器创建XML

    查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧!

        import java.io.StringWriter;

        import java.io.*;

        import javax.xml.parsers.DocumentBuilder;

        import javax.xml.parsers.DocumentBuilderFactory;

        import org.apache.xml.serialize.OutputFormat;

        import org.apache.xml.serialize.XMLSerializer;

        import org.w3c.dom.Document;

        import org.w3c.dom.Element;

        public class DOMGenerate

        {

        //主方法,程序的进口

        public static void main( String[] args )

        {

            try

            {

                //创立DocumentFactory对象

                DocumentBuilderFactory dbf =

                    DocumentBuilderFactory.newInstance();

                DocumentBuilder db = dbf.newDocumentBuilder();

                //创立Document对象

                Document doc = db.newDocument();

                //创立根元素

                Element root = doc.createElement("Student");

                //创立name元素

                Element item = doc.createElement("name");

                //为name元素增加文本子节点

                item.appendChild(doc.createTextNode("张三"));

                //将name元素添加到根元素下

                root.appendChild(item);

                //创立age元素

                item = doc.createElement("age");

                //为age元素增加文本子元素

                item.appendChild(doc.createTextNode("28" ));

                //将age元素添加到根元素下

                root.appendChild(item);

                //创立high元素

                item = doc.createElement("high");

                //为high元素添加文本子元素

                item.appendChild(doc.createTextNode("1.72" ));

                //将high元素添加到根元素下

                root.appendChild(item);

                //创立score元素

                item = doc.createElement("score");

                //创立Java元素

        每日一道理
    岭上娇艳的鲜花,怎敌她美丽的容颜?山间清澈的小溪,怎比她纯洁的心灵?

                Element lesson = doc.createElement("Java");

                //为Java元素添加文本子元素。

                lesson.appendChild(doc.createTextNode("95"));

                //将Java元素添加到score元素

                item.appendChild( lesson );

                //创立Struts元素

                lesson = doc.createElement("Struts");

                //为Struts元素添加文本子元素。

                lesson.appendChild(doc.createTextNode("90"));

                //将Struts元素添加到score元素

                item.appendChild( lesson );

                //创立Hibernate元素

                lesson = doc.createElement("Hibernate");

                //为Hibernate元素添加文本子元素。

                lesson.appendChild(doc.createTextNode("90"));

                //将Hibernate元素添加到score元素

                item.appendChild( lesson );

                //将score元素添加到根元素下

                root.appendChild( item );

                //为文档指定根元素

                doc.appendChild( root );

                //指定输出格式

                OutputFormat format = new OutputFormat(doc

                    , "GBK" , true);

                StringWriter stringOut = new StringWriter();  

                XMLSerializer serial = new XMLSerializer( stringOut, format );

                //将DOM树转换成字符串

                serial.asDOMSerializer();

                serial.serialize(doc.getDocumentElement());

                //创立文件输出流

                PrintStream ps = new PrintStream(new FileOutputStream("student.xml"));

                //输出XML文件

                ps.println(stringOut.toString());

            }

            catch (Exception ex)

            {

                ex.printStackTrace();

            }

        }

        }

        

        //注意:要导入两个jar包     xml-apis.jar和xercesImpl.jar

    文章结束给大家分享下程序员的一些笑话语录: 现在社会太数字化了,所以最好是有一个集很多功能于一身的设备!

    --------------------------------- 原创文章 By
    添加和hibernate
    ---------------------------------

  • 相关阅读:
    CF 335A(Banana-贪心-priority_queue是大根堆)
    Oracle shutdown immediate无法关闭数据库解决方法
    ORA-02266: unique/primary keys in table referenced by enabled foreign keys
    Linux命令学习总结:date命令
    Linux命令学习总结:pwd命令
    Linux命令学习总结:cd命令
    ORACLE表空间管理维护
    ORACLE 12C新特性——CDB与PDB
    [翻译]当分发数据库增长到25G时如何解决
    The process could not execute 'sp_repldone/sp_replcounters' on 'ServerName'
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3105115.html
Copyright © 2011-2022 走看看