/**
* 从数据库读取学生信息的数据集合,然后Dom创建数据树,再转成XML格式数据,输出生成xml文件
* @author pikaqiu
*
*/
public class TestGenXml { public static void main(String[] args) throws Exception {
DocumentBuilderFactory db=DocumentBuilderFactory.newInstance();
DocumentBuilder b=db.newDocumentBuilder();
Document dom=b.newDocument();
//根节点
Element root=dom.createElement("info");
dom.appendChild(root);
StudentService service=new StudentService();
List<Student> list= service.queryAll();
Iterator<Student> t =list.iterator();
while(t.hasNext()){
Student stu=t.next();
//一个主标签
Element stuElement=dom.createElement("student");
stuElement.setAttribute("id", stu.getId()+"");
root.appendChild(stuElement);
//name子标签
Element nameEle=dom.createElement("name");
nameEle.setTextContent(stu.getName());
stuElement.appendChild(nameEle);
//addr子标签
Element addrsEle=dom.createElement("address");
addrsEle.setTextContent(stu.getAddr());
stuElement.appendChild(addrsEle);
//telephone子标签
Element telEle=dom.createElement("telephone");
telEle.setTextContent(stu.getTelephone());
stuElement.appendChild(telEle); }
//通过工厂实例创建Transformer类实例,Transformer为抽象类,其实例能够将源树转换为结果树。
TransformerFactory tf=TransformerFactory.newInstance();
Transformer tans=tf.newTransformer(); //给XML美化格式
tans.setOutputProperty(OutputKeys.INDENT, "yes");
tans.setOutputProperty("{http://xml.apache.org/xalan}indent-amount", "2"); //以 Document Object Model(DOM)树的形式充当转换 Source 树的持有者。
DOMSource ds=new DOMSource(dom);
StreamResult result=new StreamResult("c:/Users/bwf/Desktop/stu.xml");
//将 XML Source 转换为 Result。
tans.transform(ds, result);
} }

DOM生成XML文件的更多相关文章

  1. Python:Dom生成XML文件(写XML)

    http://www.ourunix.org/post/327.html 在python中解析XML文件也有Dom和Sax两种方式,这里先介绍如何是使用Dom解析XML,这一篇文章是Dom生成XML文 ...

  2. Python中使用dom模块生成XML文件示例

    在Python中解析XML文件也有Dom和Sax两种方式,这里先介绍如何是使用Dom解析XML,这一篇文章是Dom生成XML文件,下一篇文章再继续介绍Dom解析XML文件. 在生成XML文件中,我们主 ...

  3. Java&Xml教程(四)使用DOM方式生成XML文件

    在前面的教程中,我们学习了使用DOM解析方式读取和修改XML文件内容,今天我们来学习如何使用DOM解析机制生成XML文件. 下面是我们对要生成的XML文件的具体要求: 1.根节点元素为"Em ...

  4. PHP中的生成XML文件的4种方法(转)

    <?xml version="1.0" encoding="utf-8"?> <article> <item> <ti ...

  5. 使用Pull解析器生成XML文件和读取xml文件

    有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使 ...

  6. Dom生成Xml和解析Xml

    xml这样的文件格式在非常多时候都是非常适合我们用来存取数据的,所以利用程序来生成xml文件和解析xml文件就显得比較重要了.在dom中是把每个元素都看做是一个节点Node的,全部页面上的属性.元素等 ...

  7. DOM解析XML文件例子

    DOM解析XML文件是一次性将目标文件中的所有节点都读入,然后再进行后续操作的方式. 一般分为以下几步: 1. 定义好目标XML文件路径path . 2. 实例化DOM解析工厂对象 ,Document ...

  8. PHP中的生成XML文件的4种方法分享

    生成如下XML串 Xml代码 <?xml version="1.0" encoding="utf-8"?> <article> < ...

  9. python生成xml文件

    先上代码: #!/usr/bin/env python3 # _*_ coding: utf-8 _*_ from xml.dom.minidom import Document def readFi ...

随机推荐

  1. python目录结构

    import sys,os #__file__取得当前文件名,pycharm会自动加上完整路径 #os.path.dirname取得上一级目录 #os.path.abspath取得绝对路径 BASE_ ...

  2. ubuntu搭建svn服务器并htpp访问版本库并svn与web同步

    Ubuntu搭建SVN服务器多版本库 1  介绍   Subversion是一个自由,开源的版本控制系统,这个版本库就像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况.这样就可 ...

  3. SQL中IF和CASE语句

    IF表达式 IF(A,B,C): 如果 A 是TRUE (A <> 0 and A<> NULL),则 IF()的返回值为B; 否则返回值则为 C.IF() 的返回值为数字值或 ...

  4. Game Engine Architecture 10

    [Game Engine Architecture 10] 1.Full-Screen Antialiasing (FSAA) also known as super-sampled antialia ...

  5. IIS启动应用程序池报错"服务无法在此时接受控制信息"

    用管理员方式打开命令行 输入命令netsh winsock reset 这个命令在百科上的解释是 netsh winsock reset命令,作用是重置 Winsock 目录.如果一台机器上的Wins ...

  6. oracle数值函数 abs()、 ceil()、 cos()、 cosh()

    1.abs绝对值函数 格式 abs(number) 即abs(数值) 例如 abs(100) 结果为 100,abs(-100)结果为100: 2.ceil用来取数值最小整数函数 格式 ceil(nu ...

  7. pandas操作行集锦

    pandas移花接木 数据准备两表: 我们接下来要进行的操作: 增 将两表进行合并 # 把两张表合并,但是这样有问题,索引会重复的进行0-19 students = page_001.append(p ...

  8. Windows下phpstudy配置tp5的nginx时遇到的奇葩问题

    nginx原来的配置: hosts已经配置好127.0.0.1 到tpdev1.net这个域名 最后结果 No input file specified. 解决方法: 找到原因了,竟然是root的分隔 ...

  9. React Router的Route的使用

    Route 是 React Router中用于配置路由信息的组件,每当有一个组件需要根据 URL 决定是否渲染时,就需要创建一个 Route. 1) path 每个 Route 都需要定义一个 pat ...

  10. myhaits if test判断字符串

    判断参数是否为字符串0 <if test='Type=="0"'><!-- 注意单双引号 --> <include refid="selec ...