Java 如何用数据库条目数据预加载GUI?

Java 如何用数据库条目数据预加载GUI?,java,mysql,sql,database,user-interface,Java,Mysql,Sql,Database,User Interface,我试图用数据库条目的数据预加载GUI。基本上,在前面的JForm中,我要求用户输入一个名称,这个类使用这个名称并用数据库条目填充现有的文本字段和区域,尽管它似乎不起作用,因为它没有预加载任何现有字段,尽管它确实存在于数据库中。如果有人能帮忙,我们将不胜感激,因为这很快就要到期了 public void presetPage(){ modifyRecipe m = new modifyRecipe(); String name = m.getSR(); try{

我试图用数据库条目的数据预加载GUI。基本上,在前面的JForm中,我要求用户输入一个名称,这个类使用这个名称并用数据库条目填充现有的文本字段和区域,尽管它似乎不起作用,因为它没有预加载任何现有字段,尽管它确实存在于数据库中。如果有人能帮忙,我们将不胜感激,因为这很快就要到期了

  public void presetPage(){
    modifyRecipe m = new modifyRecipe();
    String name = m.getSR();
    try{
        String url = "jdbc:derby://localhost:1527/Cookbook";
        Connection conn = DriverManager.getConnection(url);
        String sql = "SELECT * from RECIPES where name=?";
        PreparedStatement pst = conn.prepareStatement(sql);
        pst.setString(1, name);

        ResultSet rs = pst.executeQuery();
        boolean found = false;

        while(rs.next()){
            if(rs.getString(1).equalsIgnoreCase(name)){
                JOptionPane.showMessageDialog(null, "Found " + name );
                found = true;

                txtName.setText(rs.getString(1));
                txtSubcatagory.setText(rs.getString(2));
                cmbCatagory.getSelectedItem().toString();
                txtIngredients.setText(rs.getString(4));
                txtInstructions.setText(rs.getString(5));
                txtMod.setText(rs.getString(6));



            }else if(!found){
            JOptionPane.showMessageDialog(null, "Item Not Found!");
            this.dispose();

        }
        }

这里似乎有一些不必要的代码。如果您运行了一个只选择名称的查询,则无需检查返回的数据是否正确。你只需要知道你吵架了。另外,我对这个库不太熟悉,但是您需要一个next()来到达第一行吗?如果没有,那么在选中name=name之前,您已经通过了该行。很明显,单个JTextField不能显示所有配方的名称。如果要显示多个记录,通常使用。