java swing access_JAVA在Swing界面调用Access数据库的的表格会出现CPU的使用率高达100%,系统会很卡,求个大虾指点下...

无任何报错,只是占用的CPU资源很多,打开我做的界面再开个网页的话会很卡,关闭界面就不卡了下面是其中的一个刷新数据功能的数据库调用过程,其他的调用也跟这个差不多[code=Java][/...

无任何报错,只是占用的CPU资源很多,打开我做的界面再开个网页的话会很卡,关闭界面就不卡了下面是其中的一个刷新数据功能的数据库调用过程,其他的调用也跟这个差不多[code=Java][/code]public void findAction() throws SQLException { //查找与刷新所需时间段的数据

refresh();

Connection conn = null; //连接ACCESS数据库

try {

String strurl="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/myfile/qfc.mdb";

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

conn = DriverManager.getConnection(strurl);

if (conn == null)

return;

stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

//2006年05月19日13时19分 //2006年10月19日13时19分

select= stmt.executeQuery("select * from 整点数据 where 时间 >='"+startTime+"'" +

"and 时间<='"+endTime+"'");

try { //确定起始时间和结束时间的取值范围;

select = stmt.executeQuery("select * from 整点数据 where 时间 >='"+startTime+"' " +

"and 时间<='"+endTime+"'and 设备号='"+sortedList.getSelectedValue().toString()+"'");

rsmd = select.getMetaData();

} catch (SQLException e1) {

System.out.print("数据库刷新整点数据异常");

}

Vector columnHeads = new Vector(); //Table表1取数据库列表

Vector rows = new Vector();

try {

for ( int i = 1; i <= rsmd.getColumnCount(); ++i )

columnHeads.addElement(rsmd.getColumnName(i));

while ( select.next() )

{

Vector currentRow = new Vector();

for ( int i = 1; i <= rsmd.getColumnCount(); ++i )

{

currentRow.addElement(select.getString( i ) );

}

rows.addElement(currentRow);

}

} catch (SQLException e1) {

System.out.print("数据库连接整点数据异常");

}

defaultTableModel.setDataVector(rows,columnHeads);

defectsTable.setModel(defaultTableModel);

{

TableColumnModel columns = defectsTable.getColumnModel();

for (int m =0;m<20;m++){

TableColumn column = columns.getColumn(m);

column.setPreferredWidth(150);

}

}

JOptionPane.showMessageDialog(this,"刷新完成");

stmt.close();

} catch (Exception ex) {

System.out.print("数据库连接异常");

} finally {

if (conn != null)

try {

conn.close();

} catch (SQLException ec) {

System.out.print("数据库关闭异常");

}

}

}

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值