使用dom4j将数据库逐行分别编译为相应格式的xml文件
来源:互联网 发布:富怡绣花软件 编辑:程序博客网 时间:2024/05/10 10:23
package org;
import java.io.File;
import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
//导出数据存入XML
public class XmlDemo
{
static String sql = null;
static ResultSet ret = null;
@SuppressWarnings("rawtypes")
public static void main(String args[]) throws Exception
{
//连接数据库
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3333/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
String sql = "select s.*,c.name as classpath from students s,class c where s.classid=c.classid ";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
ResultSetMetaData data = rs.getMetaData();
ArrayList<HashMap<String, String>> al = new ArrayList<HashMap<String, String>>();
while (rs.next()) {
HashMap<String, String> map = new HashMap<String, String>();
for (int i = 1; i <= data.getColumnCount(); i++) {// 数据库里从 1 开始
String c = data.getColumnName(i);
String v = rs.getString(c);
System.out.println(c + ":" + v + "\t");
map.put(c, v);
}
System.out.println("======================");
al.add(map);
}
//创建根节点
Document document=DocumentHelper.createDocument();
Element news=DocumentHelper.createElement("news");
document.setRootElement(news);
//String e1=al.get(0).get("name");
Element id=news.addElement("id");
Element name=news.addElement("name");
Element sex=news.addElement("sex");
Element age=news.addElement("age");
Element classpath=news.addElement("classpath");
for(int i=0;i<al.size();i++)
{
//Map flag = (Map) al.get(i);
id.setText(al.get(i).get("id").toString());
name.setText(al.get(i).get("name").toString());
sex.setText(al.get(i).get("sex").toString());
age.setText(al.get(i).get("age").toString());
classpath.setText(al.get(i).get("classpath").toString());
//将树导出到文件中:两种输出方法
OutputFormat format = new OutputFormat(" ", true);
XMLWriter write=new XMLWriter(new FileOutputStream(new File("src/" + al.get(i).get("id") + ".xml")),format);
//OutputFormat opf = OutputFormat.createPrettyPrint();
format.setEncoding("UTF-8");
format.setSuppressDeclaration(true); //去除版本信息及编码信息
format.setIndent(true); // 设置是否缩进
format.setIndent(" "); // 以空格方式实现缩进
format.setNewlines(true); // 设置是否换行
write.write(document);
//news.detach();
write.close();
}
}
import java.io.File;
import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
//导出数据存入XML
public class XmlDemo
{
static String sql = null;
static ResultSet ret = null;
@SuppressWarnings("rawtypes")
public static void main(String args[]) throws Exception
{
//连接数据库
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3333/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
String sql = "select s.*,c.name as classpath from students s,class c where s.classid=c.classid ";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
ResultSetMetaData data = rs.getMetaData();
ArrayList<HashMap<String, String>> al = new ArrayList<HashMap<String, String>>();
while (rs.next()) {
HashMap<String, String> map = new HashMap<String, String>();
for (int i = 1; i <= data.getColumnCount(); i++) {// 数据库里从 1 开始
String c = data.getColumnName(i);
String v = rs.getString(c);
System.out.println(c + ":" + v + "\t");
map.put(c, v);
}
System.out.println("======================");
al.add(map);
}
//创建根节点
Document document=DocumentHelper.createDocument();
Element news=DocumentHelper.createElement("news");
document.setRootElement(news);
//String e1=al.get(0).get("name");
Element id=news.addElement("id");
Element name=news.addElement("name");
Element sex=news.addElement("sex");
Element age=news.addElement("age");
Element classpath=news.addElement("classpath");
for(int i=0;i<al.size();i++)
{
//Map flag = (Map) al.get(i);
id.setText(al.get(i).get("id").toString());
name.setText(al.get(i).get("name").toString());
sex.setText(al.get(i).get("sex").toString());
age.setText(al.get(i).get("age").toString());
classpath.setText(al.get(i).get("classpath").toString());
//将树导出到文件中:两种输出方法
OutputFormat format = new OutputFormat(" ", true);
XMLWriter write=new XMLWriter(new FileOutputStream(new File("src/" + al.get(i).get("id") + ".xml")),format);
//OutputFormat opf = OutputFormat.createPrettyPrint();
format.setEncoding("UTF-8");
format.setSuppressDeclaration(true); //去除版本信息及编码信息
format.setIndent(true); // 设置是否缩进
format.setIndent(" "); // 以空格方式实现缩进
format.setNewlines(true); // 设置是否换行
write.write(document);
//news.detach();
write.close();
}
}
}
注:本论文部分代码为转载
1 0
- 使用dom4j将数据库逐行分别编译为相应格式的xml文件
- dom4j将数据库中的数据转化为xml格式
- 使用POI和Dom4j将excel转换为xml格式的excel
- 使用xmlbeans构造符合相应Schema格式的xml文件
- 使用Dom4J遍历Xml文件并获得相应Jtree模型
- 将具有特殊格式的文件转化为xml文件
- 将XML文件转化为JSON格式的文件
- 将JavaBean用DOM4J转成xml格式的字符串,用DOM4J解析xml格式的字符串
- 将数据库数据转换为xml格式
- 通过DOM4J将数据库的表转换为XML文档的实例
- 将oracle的Date转换为相应格式输出
- 使用org.dom4j将java对象转化为xml
- 使用org.dom4j将java对象转化为xml
- 使用dom4j将xml文件转换成project.properties文件
- 根据XLS格式转换相应的xml文件
- 使用dom4j将xml文件转换成bean
- 使用dom4j的xpath读取XML文件
- dom4j读取xml文件的简单使用
- 剑指offer 赋值运算符
- 6.python基本数据结构-字典-方法
- Qt中的QString字符串如何输出
- React
- android疑难问题
- 使用dom4j将数据库逐行分别编译为相应格式的xml文件
- linux中task_struct结构体中的字段
- SSL/TLS原理详解
- 7.python数据结构-基本数据类型
- java的jsp常用标签
- C++继承与转换
- 【前端】基于Bootstrap3的CSS3价格表(精美代码版)
- Android开发
- 8.python数据结构-列表-基本操作