`

数据库导出.xml通过给定的表名导出所有数据生成xml文件

阅读更多

/*

*

****数据库导出.xml文件,通过给定的表名导出所有数据生成xml文件

****

*/

 

package com.lwp.dbxml;

import java.io.File;
import java.io.FileWriter;
import java.io.Writer;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.zip.DataFormatException;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

import com.sun.org.apache.bcel.internal.generic.NEW;

public class CreateXML {

 /**
  * 通过给定的表名导出所有数据生成xml文件
  *
  * @param tableName
  *            数据库表名
  */
 public static void createXml(String tableName) {
  System.out.println("==========转换开始==============");
  try {
   // -------------jdbc代码 com.microsoft.sqlserver.jdbc.SQLServerDriver
   Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   String url = "jdbc:sqlserver://localhost:1433;DatabaseName=SunLeadsGps";
   String user = "sa";//
   String password = "123456";//   
   Connection con = DriverManager.getConnection(url, user, password);
   String sql = "select e.* from " + tableName + " e";
   PreparedStatement ps = con.prepareStatement(sql);
   ResultSet rs = ps.executeQuery();

   // 任务:从resultset结果集中提取元数据信息
   ResultSetMetaData rsmd = rs.getMetaData();
   // 表的字段数目
   int count = rsmd.getColumnCount();
   // 存入列名数组
   String[] columnName = new String[count];
   for (int i = 1; i <= count; i++) {
    columnName[i - 1] = rsmd.getColumnName(i);
   }

   // -----------------使用DOM4J生成xml文件

   Document doc = DocumentHelper.createDocument();
   // 生成根节点
   Element root = doc.addElement("ROOT");
   int i;
   while (rs.next()) {
    Element e = root.addElement(tableName);
    for (i = 1; i <= count; i++) {
     Element column = e.addElement(columnName[i - 1]);
     if (rs.getObject(i) != null) {
      column.setText(rs.getObject(i) + "");
     } else {
      column.setText("");
     }
    }
   }
   // 写入文件
   DateFormat df = new SimpleDateFormat("yyyyMMdd");
   OutputFormat opf = OutputFormat.createPrettyPrint();
   opf.setEncoding("GBK");
   System.out.println("E:/" + df.format(new Date()));
   File f = new File("E:/" + df.format(new Date()));

   if (f.exists() == false) {
    f.mkdir();
   }

   Writer w = new FileWriter(f + "/" + tableName + ".xml");
   XMLWriter xw = new XMLWriter(w, opf);
   xw.write(doc);
   // 关闭文件流
   xw.close();
   w.close();

   rs.close();
   ps.close();
   con.close();
   System.out.println("==========生成完毕==============");
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

 public static void main(String[] args) {
   createXml("user");

}

分享到:
评论

相关推荐

    asp.net c # 将数据导出到xml,并从xml导入数据

    根据给定的信息,本文将详细解释如何在ASP.NET与C#环境下使用ADO.NET技术实现数据与XML文件之间的导入与导出操作。此过程涉及到ADO.NET中的`DataSet`对象及其相关属性与方法、XML序列化机制以及如何通过编程手段管理...

    Oracle表数据和xml文件间相互导入导出的PL.pdf

    在Oracle数据库环境中,将XML文件的数据导入到数据库或从数据库导出到XML文件是一项常见的任务,特别是在需要在不同系统间交换结构化数据时。这里,我们讨论如何使用PL/SQL来实现这一过程。 首先,我们需要创建一个...

    一个ORACLE导入和导出XML文件的例子

    ### ORACLE导入与导出XML文件的技术解析 #### 标题和描述中的核心知识点 本文主要探讨了在Oracle数据库环境中如何实现XML文件的导入与导出功能,通过具体实例来解决批量处理数据的问题。XML(Extensible Markup ...

    javaWeb导出Excel文件

    - OpenCSV是一个专门处理CSV文件的库,如果你的数据格式简单,也可以考虑直接导出CSV文件,因为它们的生成和解析相对简单。 总结来说,Java导出Excel文件主要依赖于像JExcelApi这样的第三方库,通过这些库提供的...

    R 数据导入和导出.pdf

    ### R 数据导入和导出知识点总结 ...总的来说,《R 数据导入和导出》这份文档为用户提供了一个全面的数据处理框架,涵盖了从基本的文本文件处理到复杂的关系数据库交互等多种场景,极大地简化了数据科学家的工作流程。

    导入TXT导出xml文件

    在给定的压缩包文件中,我们看到了多个名为"SalesWareHouseOut_"的XML文件,这些文件可能包含了销售仓库的输出数据,例如订单、产品、客户等信息。每个文件的名称都带有时间戳,这表明它们可能是定期生成的,用于...

    excel导出为xml数据1

    4. **XML数据导出**:从Excel导出XML文件的过程,包括可能的警告和数据丢失问题。 5. **数据一致性**:XML文件中的数据应与Excel中的数据保持一致。 掌握这些知识点,能够帮助你在日常工作中更有效地处理结构化数据...

    c# 循环生成XML方法

    在IT领域,特别是软件开发与数据处理中,XML(可扩展...这种方法不仅适用于数据导出,还广泛用于API响应、配置文件生成以及数据交换等场景。理解并掌握这些基本概念,将有助于开发者在实际项目中更灵活地处理XML数据。

    项目培训XML和数据库

    例如,可以编写一个Java程序,使用JDBC连接数据库,执行SELECT查询,获取"mytable"表的所有数据,再使用DOM API创建XML文档结构,将查询结果写入XML文件。 在Java程序`DBtoXML1`中,首先建立数据库连接,然后使用...

    Visual FoxPro数据库函数.docx

    14. CURSORTOXML(): 将Visual FoxPro临时表转换成XML文本格式,便于数据交换或导出。 15. CURVAL(): 直接从磁盘上的表或远程数据源中返回字段的值,而无需先加载整个记录。 16. DBC(): 获取当前活动数据库的名称和...

    poi导出cvs文件

    在这个场景中,我们将探讨如何使用POI来创建CSV文件,这在数据导入导出、数据分析或报表生成等场景中非常常见。 CSV文件因其简洁和通用性而广泛使用,它可以用文本编辑器打开,也可以被大多数电子表格软件如...

    tomcat 去读oracle数据库数据利用highcharts生成图表

    在本项目中,我们主要涉及了以下几个IT领域的关键知识...通过以上步骤,你可以构建一个能够实时从Oracle数据库读取数据并用Highcharts生成图表的Web应用。这个项目对于数据分析、监控或者报表展示都有实际的应用价值。

    如何使用DBUnit做数据备份恢复

    数据备份通常通过导出数据库为 SQL 脚本或者 XML 文件实现。在提供的文件中,student_mysql.sql 可能就是一个数据库的 SQL 备份,可以通过执行这个文件将数据导入到数据库中。DBUnit 提供了 `IDataFormatter` 接口...

    web 利用XML导出EXCEL

    根据给定的信息,本文将详细解释如何利用XML技术来实现数据导出至Excel的功能,并对提供的部分代码进行解析。此方法对于需要频繁处理数据导出任务的开发人员来说非常实用。 ### 一、导出数据至Excel的基本原理 在...

    PHP实现XML与数据格式进行转换类

    - 数据备份与导入:将数据库内容导出为XML,便于存储和迁移。 总之,PHP提供了丰富的工具处理XML,使得在不同数据格式间转换变得简单高效。理解并熟练运用这些工具,能够提升你的开发效率和代码质量。对于给定的类...

    java实现poi模板生成PPT文件代码

    数据可以从数据库、CSV文件或其他数据源获取,然后映射到PPT模板的占位符上。这通常涉及迭代数据,用数据替换`TextShape`的文本内容。 7. **jar依赖**: 使用Apache POI,你需要在项目中引入相应的jar文件。现代...

    asp.net 利用word模板导出word文件

    这种技术尤其适合在服务器端进行文件生成,比如在ASP.NET环境中。 要利用OpenXML在ASP.NET中生成Word文档,首先你需要了解OpenXML SDK。OpenXML SDK是微软提供的一个免费工具包,它为开发人员提供了处理OpenXML文档...

    数据导出

    标题“数据导出”涉及到的是将数据库中的信息转化为可存储或传输的格式,这通常用于备份、分析或者在不同系统间共享数据。描述中的“博文链接”指向了一个可能的详细解释,但遗憾的是,没有实际内容提供。标签“源码...

    ET200SP Profinet通信GSD文件(V2.3-V2.34).rar

    ET200SP是西门子公司的分布式I/O系统,它是SIMATIC自动化系统的一部分,用于实现工厂自动化中的数据通信。Profinet是一种基于工业以太网的通信标准,由德国 PROFIBUS 国际组织(PI)开发,是工业自动化领域广泛采用...

    QTXML例子.zip

    4. **QTreeWidget项导出保存为Xml**:当用户在`QTreeWidget`中进行操作后,如修改节点内容,可以将这些变化保存回XML文件。这可以通过遍历`QTreeWidget`的项,构建新的`QDomDocument`,并将每个项转换为其对应的XML...

Global site tag (gtag.js) - Google Analytics