生成XML
来源:互联网 发布:置信度传播算法 编辑:程序博客网 时间:2024/05/29 10:48
总共有三种方法生成xml
1. 第一种
//1.实例化DocumentBuilderFactory
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
//2.通过dbf获取DocumentBuilder
DocumentBuilder db=dbf.newDocumentBuilder();
//3.创建Document
Document document=db.newDocument();
//4.创建标签<persons>
Element elementPersons=document.createElement("persons");
//创建<person>
Element elementPerson=document.createElement("person");
//创建<page>
Element elementPage=document.createElement("page");
//给标签设值
elementPage.setTextContent("22");
//创建<psex>
Element elementPsex=document.createElement("psex");
elementPsex.setTextContent("男");
//5.创建属性
Attr attrPid=document.createAttribute("pid");
//给属性设值
attrPid.setValue("1");
Attr attrPname=document.createAttribute("pname");
attrPname.setValue("hug");
//6.建立关系
document.appendChild(elementPersons);
elementPersons.appendChild(elementPerson);
elementPerson.appendChild(elementPage);
elementPerson.appendChild(elementPsex);
elementPerson.setAttributeNode(attrPid);
elementPerson.setAttributeNode(attrPname);
System.out.println("创建OK");
//将生成的Document保存到XML文件中
//1.实例化转换器工厂
TransformerFactory tff=TransformerFactory.newInstance();
//2.通过tff获取转换器
Transformer transformer=tff.newTransformer();
//来源
DOMSource source=new DOMSource(document);
//结果
StreamResult streamResult=new StreamResult(new File("my.xml"));
//3.开始转换
transformer.transform(source, streamResult);
System.out.println("保存成功");
2.第二种
/**
* 使用DOM4J创建XML
* @author Administrator
*
*/
public class TestCreateXMLByDom4j {
public static void main(String[] args) {
try {
//1.创建Document
Document document=DocumentHelper.createDocument();
//2.创建标签<students>
Element elementStudents=document.addElement("students");
//创建标签<student>
Element elementStudent=elementStudents.addElement("student");
//设值属性
elementStudent.addAttribute("sid", "1");
elementStudent.addAttribute("sname", "hug");
//创建标签<sage><ssex>
Element elementSage=elementStudent.addElement("sage");
//设值
elementSage.setText("140");
Element elementSsex=elementStudent.addElement("ssex");
elementSsex.setText("男");
//生成到XML中
FileOutputStream fos=new FileOutputStream("students.xml");
XMLWriter xmlWriter=new XMLWriter(fos,OutputFormat.createPrettyPrint());
xmlWriter.write(document);
xmlWriter.close();
System.out.println("OK");
3.第三种(利用页面生成)
(1)(首先写一个实体类)eg:dog
(2)写servlet
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
List<Dog> dogs=new ArrayList<Dog>();
for (int i = 1; i <=3; i++) {
dogs.add(new Dog(i, "旺旺"+i, 1));
}
req.setAttribute("dogs", dogs);
req.getRequestDispatcher("success.jsp").forward(req, resp);
}
}
(3)
在写一个页面,不过要改为xml模式
<?xml version="1.0" encoding="UTF-8"?><%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/xml; charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<dogs>
<c:forEach items="${dogs}" var="dog">
<dog did="${dog.did}">
<dname>${dog.dname}</dname>
<dage>${dog.dage}</dage>
</dog>
</c:forEach>
</dogs>
- 生成xml
- xml生成
- 生成xml
- 生成xml
- 生成xml
- 生成XML
- 生成 xml
- 生成xml
- 生成XML
- 生成xml
- 生成xml
- XML生成
- 生成XML
- xml生成
- Xml生成
- 生成xml
- XML生成(一):DOM生成XML
- XML生成(二):SAX生成XML
- Activity的基本用法
- Mac-----Mac安装虚拟机
- BZOJ 4491 我也不知道题目名字是什么
- Bootstrap3.0学习第二十一轮(JavaScript插件——工具提示)
- Spring的bean管理(注解注入属性和注解文件混合使用)
- 生成XML
- python获取链家网数据
- 由opencv with qt的imshow源码的一部分联想到在arm上实现highgui
- Service得到配置更改通知
- 在Servlet中获取spring管理的bean
- POJ 1677 Girls' Day 笔记
- FZUOJ 2250 不可能弹幕结界【思维+Bfs】
- Matlab小波包分解后如何求各频带信号的能量值?
- vagrant+centos7 安装报错