while(rs.next())覆盖数据虽然我正在使用向量

时间:2017-03-10 22:52:33

标签: java jdbc vector

我正在尝试通过数据访问对象读取本地数据库上的表。 对于每一行,我想创建一个包含行信息的对象。 我在while(rs.next())循环中使用了一个向量,这样每次迭代都会用一个对象填充一个单元格。 但是我得到了这个错误:最后一行中的对象正在填充向量的所有单元格。 我不明白为什么会发生这种情况,我认为使用矢量会阻止覆盖元素

            while(rs.next())
            {

                int ID=rs.getInt("ID");
                String Nom=rs.getString("Nom");
                String Prenom=rs.getString("Prenom");
                int Age=rs.getInt("Age");

                etudiant.setID(ID);
                etudiant.setNom(Nom);
                etudiant.setPrenom(Prenom);
                etudiant.setAge(Age);

                v.add(etudiant);

                for(int i=0;i<v.size();i++)
                {
                    etudiant etdd=v.elementAt(i);
                    String nom =etdd.getNom();
                    String prenom=etdd.getPrenom();
                    int age=etdd.getAge();
                    int id=etdd.getID();

                }   

            }

这是我用来显示矢量内容的代码(在我的主页中)

Vector<etudiant> vctr=DAO.GetEtudiants();
    for(int i=0;i<vctr.size();i++)
    {
        etudiant etdd=vctr.elementAt(i);
        String nom =etdd.getNom();
        String prenom=etdd.getPrenom();
        int age=etdd.getAge();
        int id=etdd.getID();
        System.out.println("ID: "+id+"   |Nom: "+nom+"      |Prenom: "+prenom+"   |Age: "+age);

    }

0 个答案:

没有答案