连接数据库: import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; public class ConnectDB { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ConnectDB c = new ConnectDB(); c.connDB("com.mysql.jdbc.Driver", "jdbc:mysql://127.0.0.1:3306/towerbase", "root", "123"); try { ResultSet rs = c.select("select * from user"); ResultSetMetaData rsmd = rs.getMetaData(); int i = rsmd.getColumnCount(); //String s = rsmd.getCatalogName(1);//获取数据库名 for(int j=1;j<=i;j++) { //String s=rsmd.getColumnName(j); System.out.println(rsmd.getColumnName(j)); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } Connection connection; Statement statement; ResultSet resultSet = null; public void connDB(String driver, String url, String username, String password) { try { Class.forName(driver); connection = DriverManager.getConnection(url, username, password); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /**查询 * @param sql * @return */ public ResultSet select(String sql) { try { statement = connection.createStatement(); resultSet = statement.executeQuery(sql); } catch (SQLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } return resultSet; } public int insert_delete_update(String sql) { int i = 0; try { i= statement.executeUpdate(sql); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return i; } } 获取文件后缀: import java.util.StringTokenizer; public class GetFileSuffix { public static String getFileSuffix(String fileName) { String fileSuffix = null; StringTokenizer st = new StringTokenizer(fileName, "."); while (st.hasMoreTokens()) { fileSuffix = st.nextToken(); } return fileSuffix; } } 从数据库中读入数据生成XML文件: import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.XMLWriter; /** * 从数据库中读入数据生成XML文件 * * @author tower * */ public class ReadDBToXml { Log log = LogFactory.getLog(this.getClass()); public void readFromDBToXml() { ConnectDB c = new ConnectDB(); c.connDB("com.mysql.jdbc.Driver", "jdbc:mysql://127.0.0.1:3306/towerbase", "root", "123"); try { ResultSet rs = c.select("select * from user"); ResultSetMetaData rsmd = rs.getMetaData(); int i = rsmd.getColumnCount();// 获取表的列数 String dbName = rsmd.getCatalogName(1);// 获取数据库名 String tableName = rsmd.getTableName(1);// 获取表名 log.info("数据库名:" + dbName + " 表名:" + tableName + " 列数:" + i); //创建Document对象 Document document = DocumentHelper.createDocument(); Element root = document.addElement(tableName);// 添加根元素,以表名作为root元素 while (rs.next()) { for (int j = 1; j <= i; j++) { Element e = root.addElement(rsmd.getColumnName(j));// 将列名添加到root子元素中 e.addText(rs.getObject(j).toString());// 在元素中添加文本,对应于表中的列值 log.info("数据表列名:" + rsmd.getColumnName(j) + " 列名所对应的数据:" + rs.getObject(j).toString()); } } // 将Document对象写入到XML文件中 File outToXmlFile = new File( "F://workspace7.0//ajax//WebRoot//configFile//readDBToXml.xml"); if (!outToXmlFile.exists()) { outToXmlFile.createNewFile(); } FileWriter fw = new FileWriter(outToXmlFile); OutputFormat format = OutputFormat.createPrettyPrint();// 格式化输出 format.setEncoding("GBK");// 指定 XML编码 XMLWriter writer = new XMLWriter(new FileWriter(outToXmlFile), format); writer.write(document); writer.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ReadDBToXml r = new ReadDBToXml(); r.readFromDBToXml(); } }