使用java把数据库数据导出生成xml文件

以前写的程序,今天翻出来打了个jar包,der-db2xml.jar包含了crimson包和mysql驱动,der-db2xml-1.jar只是.class文件,需要自行加载上面的包和驱动

只是在mysql数据库下测试通过,其他的DB有朋友有兴趣可以帮测一下

下面是自己写的一个测试类,DB的表名,用户名和密码请自行修改

package org;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import org.dTx.CreateXmlFile;


/**
* @author Der
* @Email uidin@163.com
* @date 2007-4-16
* @packeage_name org
*
*/
public class Testxml
{

/**
* @param args
* @throws ClassNotFoundException
* @throws SQLException
*/
public static void main(String[] args) throws ClassNotFoundException, SQLException
{
/**加载mysql驱动*/
Class.forName("org.gjt.mm.mysql.Driver");

/**连接地址*/
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/db_name","db_username","db_password");
Statement stmt=conn.createStatement();

/**查询语句_例句*/
ResultSet rs=stmt.executeQuery("select * from user");

/**将结果集中的数据写到指定的xml中,注意:此xml路径在当前工程的根目录*/
CreateXmlFile createXml = new CreateXmlFile(rs,"user.xml");

/**设置根元素名称*/
createXml.setRootElementName("userinfo","user");

/**创建属性名,1表示该字段在该数据表的第几列*/
createXml.setAttributeName("id",1);

/**创建元素名,4表示username在该表的第4列*/
createXml.setElementName("username",4);

/**开始创建xml文件*/
createXml.startCreateXml();

/**
* 生成的xml样例
* <?xml version="1.0" encoding="GB2312"?>
*
* <userinfo>
* <user id="402881e5174e8a1f01174e8aeff20001">
* <username>java</username>
* </user>
* </userinfo>
* */
}
}
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将数据库中的数据导出到Excel文件中,可以使用Java中的Apache POI库来实现。以下是一个例子: ```java import java.io.FileOutputStream; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class ExportToExcel { public static void main(String[] args) { String jdbcUrl = "jdbc:mysql://localhost:3306/testdb?useSSL=false"; String username = "root"; String password = "password"; String query = "SELECT * FROM users"; try (Connection conn = DriverManager.getConnection(jdbcUrl, username, password); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(query)) { // 创建工作簿和工作表 XSSFWorkbook workbook = new XSSFWorkbook(); XSSFSheet sheet = workbook.createSheet("Users"); // 创建表头 Row headerRow = sheet.createRow(0); String[] columns = {"ID", "Name", "Email", "Phone"}; for (int i = 0; i < columns.length; i++) { Cell cell = headerRow.createCell(i); cell.setCellValue(columns[i]); } // 填充数据 int rowNum = 1; while (rs.next()) { Row row = sheet.createRow(rowNum++); row.createCell(0).setCellValue(rs.getInt("id")); row.createCell(1).setCellValue(rs.getString("name")); row.createCell(2).setCellValue(rs.getString("email")); row.createCell(3).setCellValue(rs.getString("phone")); } // 将工作簿写入文件 FileOutputStream outputStream = new FileOutputStream("users.xlsx"); workbook.write(outputStream); workbook.close(); } catch (SQLException | IOException e) { e.printStackTrace(); } } } ``` 在上面的代码中,我们首先连接到数据库,然后创建一个工作簿和工作表。接下来,我们创建表头并填充数据。最后,我们将工作簿写入文件。 请注意,此代码使用了XSSF工作簿,这意味着生成的Excel文件是基于XML的,并且只能在Excel 2007及更高版本中打开。如果您需要支持早期版本的Excel,可以使用HSSF工作簿代替。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值