swing将数据从mysql db检索到textfield

问题描述:

我在mysql表中的列有100条记录,我想从textfield中的表中显示值(每3秒显示0到99之间的记录)。这是我的代码:

i have column in mysql table have 100 record ,i want show values from table inside textfield ( every 3 second show record from 0 - 99). this is my code :

Connection conn = null;
    Statement st = null;
    ResultSet rs = null;
    String dbUrl = "jdbc:mysql://localhost:3306/jointdb";
    String dbUsr = "root";
    String dbPass = "a12345";
    try{
    String sql= "select expert1 from eridb";
    Class.forName("com.mysql.jdbc.Driver");
    conn = DriverManager.getConnection (dbUrl,dbUsr,dbPass);
    st = conn.createStatement();
    rs = st.executeQuery(sql);
   // textField1.setText("enter text here");
    while(rs.next()){
        //Get values
        String value = rs.getString("expert1");
        textField1.setText(value);        
    }

}catch(Exception e){
    e.printStackTrace();
}finally{
    try {
        rs.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
    try {
        st.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
    try {
        conn.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
}

现在,我希望每3秒显示一次记录值来自索引0-99记录

Now, i want show value of record every 3 second from index 0-99 record

注意:数据每3秒钟进入数据库
谢谢

Note: Data come to database every 3 second thanks

使用Thread.sleep(毫秒)

Use Thread.sleep(milliseconds)

while(rs.next()){
    String value = rs.getString("expert1");
    textField1.setText(value);        
    try {
          Thread.sleep(3000);
    } catch(Exception e) {}
}

你可以用线程。