📄 getrecordsfromdb.java
字号:
package com.unimas.dbsync.input;import com.unimas.dbsync.entity.SourceTabBaseBean;import java.sql.*;import java.io.IOException;/** * Created by IntelliJ IDEA. * User: 孔加亮 * Date: 2008-12-8 * Time: 15:11:40 *//** * 从数据库中读取源端表的记录. */public class GetRecordsFromDb { private int ColumnCount; private String ServerTabName;//用于插入表名(从配置文件获取*) private String TabFieldInf = ""; private String RecordsInf = ""; private int RecordsNum = 0; /** * @param bean 对象bean表示源端表信息 */ public void getStuInf(SourceTabBaseBean bean) { Connection conn = null; Statement stmt = null; ResultSet resultSet = null; try { conn = SourceDataBase.getInstance().getConnection();//建立与数据库的连接 stmt = conn.createStatement(); resultSet = stmt.executeQuery("select * from student"); //得到表信息(*应该由列名代替) //表字段信息应从配置文件中读取(需改) if (!resultSet.wasNull()) { ResultSetMetaData resultSetMetaData = resultSet.getMetaData(); //获取表的基本信息 System.out.println("表字段个数:" + resultSetMetaData.getColumnCount()); ColumnCount = resultSetMetaData.getColumnCount(); // 得到表字段个数 bean.setColumnCount(ColumnCount); System.out.println("表字段信息"); for (int i = 1; i <= ColumnCount; i++) { if (i != ColumnCount) { System.out.println(resultSetMetaData.getColumnName(i) + "(" + resultSetMetaData.getColumnTypeName(i) + "[" + resultSetMetaData.getColumnDisplaySize(i) + "]" + ")"); TabFieldInf += resultSetMetaData.getColumnName(i) + "(" + resultSetMetaData.getColumnTypeName(i) + "[" + resultSetMetaData.getColumnDisplaySize(i) + "]" + ")" + "\r\n"; } else { System.out.println(resultSetMetaData.getColumnName(i) + "(" + resultSetMetaData.getColumnTypeName(i) + "[" + resultSetMetaData.getColumnDisplaySize(i) + "]" + ")"); TabFieldInf += resultSetMetaData.getColumnName(i) + "(" + resultSetMetaData.getColumnTypeName(i) + "[" + resultSetMetaData.getColumnDisplaySize(i) + "]" + ")" + "\r\n\r\n"; } } bean.setFieldName(TabFieldInf); //将表字段信息存入对象 } if (!resultSet.wasNull()) { RecordsNum++; } //获取服务端中的表的详细信息 while (resultSet.next()) { for (int i = 1; i <= ColumnCount; i++) { if (i != ColumnCount) { RecordsInf += resultSet.getObject(i).toString() + "\r\n"; } else { RecordsInf += resultSet.getObject(i).toString() + "\r\n\r\n"; } } } bean.setRecordsNum(RecordsNum); bean.setTabRecords(RecordsInf); bean.setRecordsNum(RecordsNum); //异常处理 } catch (SQLException sqle) { System.out.println("未能正常从服务端数据库中获取信息"); } catch (ClassNotFoundException e) { System.out.println("未能与服务端数据库正常通信"); } finally { if (resultSet != null) { try { resultSet.close(); } catch (SQLException sqlE) { sqlE.printStackTrace(); } } if (stmt != null) { try { stmt.close(); } catch (SQLException sqlE) { sqlE.printStackTrace(); } } SourceDataBase.getInstance().closeConnection(conn); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -