Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中显示mysql的多条记录_Java_Mysql_Eclipse - Fatal编程技术网

如何在java中显示mysql的多条记录

如何在java中显示mysql的多条记录,java,mysql,eclipse,Java,Mysql,Eclipse,因此,目前我有一个名为MySqlConnection的类,其中包含以下代码 import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.PreparedStatement; import java.sql.Connection; public class MySqlConnection { public static void Connection() throws Exception {

因此,目前我有一个名为MySqlConnection的类,其中包含以下代码

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.PreparedStatement;
import java.sql.Connection;

public class MySqlConnection {

    public static void Connection() throws Exception {

        // Accessing driver from the JAR file
        Class.forName("com.mysql.jdbc.Driver");

        // Creating a variable for the connection called "con"
        Connection con = DriverManager.getConnection(
                "jdbc:mysql://localhost:3306/Friends", "John", "John123");
        // jdbc:mysql://localhost:3306/employee_record --> This is the database
        // root is the database user
        // root is the password

        // Here we create our query
        PreparedStatement Statement = con
                .prepareStatement("SELECT * FROM names ORDER BY first");

        // Creating a variable to execute query
        ResultSet result = Statement.executeQuery();

        while (result.next()) {

            System.out.println(result.getString(1) + " " + result.getString(2));

        }

    }

}
当我运行它时,它会在EclipseIDE中一次显示所有结果。


如何使其在单独的窗口中显示所有结果?

您可以在JFrame上使用JTable以表格格式在窗口中显示数据。您可以在Internet上找到有关使用JTable的示例。

您可以使用JTable。这是我的版本

public class JResultTable extends JTable {
  public DefaultTableModel dataModel;
  ResultSet rs;
  public void init_model(){
  dataModel=new DefaultTableModel();
}

public void add_data() throws SQLException {
    String colNames[];
    ResultSetMetaData rsMetaData=rs.getMetaData();
    int colCount=rsMetaData.getColumnCount();
    colNames=new String[colCount];
    for(int i=1;i<=colCount;i++)
            colNames[i-1]=rsMetaData.getColumnName(i).toUpperCase();
    dataModel.setColumnIdentifiers(colNames);
    while(rs.next())
    {
        String[] rowdata=  new String[colCount];
        for(int i=1;i<=colCount;i++)
                rowdata[i-1]=rs.getString(i);
        dataModel.addRow(rowdata);
    }
}



JResultTable(ResultSet rs) throws SQLException {
    super();
    init_model();
   this.rs=rs;
    add_data();
    setModel(dataModel);
 }
}
公共类JResultTable扩展了JTable{
公共数据模型;
结果集rs;
公共void init_模型(){
dataModel=新的DefaultTableModel();
}
public void add_data()引发SQLException{
字符串colNames[];
ResultSetMetaData rsMetaData=rs.getMetaData();
int colCount=rsMetaData.getColumnCount();
colNames=新字符串[colCount];

对于(int i=1;我请详细说明,
“…在一个单独的窗口”
。您到底想做什么?您尝试了什么?您卡在哪里?我希望结果显示在弹出窗口中。我尝试过使用jpane,但一次只显示一个结果。我必须单击“确定”查看下一个结果。发布代码很好,但代码几乎与您遇到的问题完全无关。值来自何处(SQL、列表等)无关紧要。因此,省略不需要的部分以使问题更易于阅读。我将为此给您1+分。