使用Java打印MySQL表值

使用Java打印MySQL表值,java,mysql,eclipse,Java,Mysql,Eclipse,我试图用Java打印数据库中的表值。我已经成功创建了连接,并且能够创建一个表。但是我在打印表格值时遇到问题 试一试 您需要使用while循环来循环结果集。示例如下: public static ObservableList<Customer> search_ForDropDown(String searchQuery){ MysqlDataSource dataSource = CurrentServer.getDataSource(); Observable

我试图用Java打印数据库中的表值。我已经成功创建了连接,并且能够创建一个表。但是我在打印表格值时遇到问题

试一试


您需要使用while循环来循环结果集。示例如下:

    public static ObservableList<Customer> search_ForDropDown(String searchQuery){
    MysqlDataSource dataSource = CurrentServer.getDataSource();
    ObservableList<Customer> data = FXCollections.observableArrayList();
    data.clear();

    try {
        String query = "SELECT * FROM CUSTOMER LIMIT 5";

        Connection conn = dataSource.getConnection();
        Statement stmt = conn.createStatement();
        ResultSet rs = stmt.executeQuery(query);     

        while (rs.next()) {
            Customer customer = new Customer();
            customer.setID(rs.getInt("id"));
            customer.setPhoneNumber(rs.getString("phoneNumber"));
            customer.setEmailAddress(rs.getString("emailAddress"));

            data.add(customer);
        }

        rs.close();
        stmt.close();
        conn.close();

    } catch (SQLException e) {
        e.printStackTrace();
    }       
    return data;
}
publicstaticobservelistsearch\u ForDropDown(字符串搜索查询){
MysqlDataSource dataSource=CurrentServer.getDataSource();
ObservableList data=FXCollections.observableArrayList();
data.clear();
试一试{
String query=“从客户限额5中选择*”;
Connection conn=dataSource.getConnection();
语句stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(查询);
while(rs.next()){
客户=新客户();
customer.setID(rs.getInt(“id”);
customer.setPhoneNumber(rs.getString(“phoneNumber”);
customer.setEmailAddress(rs.getString(“emailAddress”);
数据。添加(客户);
}
rs.close();
stmt.close();
康涅狄格州关闭();
}捕获(SQLE异常){
e、 printStackTrace();
}       
返回数据;
}

正确。我最终使用了一个循环。我通读了ResultSet的文档。它指向表中的一行,所以要遍历每一行,我必须使用一个循环。它循环直到有下一个()行,如果有,则打印该行列中的值。
    public static ObservableList<Customer> search_ForDropDown(String searchQuery){
    MysqlDataSource dataSource = CurrentServer.getDataSource();
    ObservableList<Customer> data = FXCollections.observableArrayList();
    data.clear();

    try {
        String query = "SELECT * FROM CUSTOMER LIMIT 5";

        Connection conn = dataSource.getConnection();
        Statement stmt = conn.createStatement();
        ResultSet rs = stmt.executeQuery(query);     

        while (rs.next()) {
            Customer customer = new Customer();
            customer.setID(rs.getInt("id"));
            customer.setPhoneNumber(rs.getString("phoneNumber"));
            customer.setEmailAddress(rs.getString("emailAddress"));

            data.add(customer);
        }

        rs.close();
        stmt.close();
        conn.close();

    } catch (SQLException e) {
        e.printStackTrace();
    }       
    return data;
}