Maison  >  Questions et réponses  >  le corps du texte

java - J'ai rencontré un problème avec l'ensemble de résultats ResultSet, veuillez regarder le code?

Le code de la section problématique est le suivant :

public ArrayList<menuentity> getMenuList(Connection con){

        ArrayList<menuentity> list=null;
        try {
            String sql="select * from menu where misEnable=1";
            Statement stmt=con.createStatement();
            ResultSet rs=stmt.executeQuery(sql);
            System.out.println("rs:"+rs);
            menuentity m=null;
            list=new  ArrayList<menuentity>();
            System.out.println("new  ArrayList<menuentity>();");
            while(rs.next()){
                System.out.println("rs.next()");
                m=new menuentity();
                m.setMid(rs.getString(1));
                m.setMname(rs.getString(2));
                m.setMurl(rs.getString(3));
                m.setMimg(rs.getString(4));
                m.setMparnetid(rs.getString(5));
                m.setMcreatedate(rs.getDate(6));
                m.setMisEnable(rs.getInt(7));
                m.setMcreater(rs.getString(8));
                m.setMisLeaf(rs.getInt(9));
                System.out.println("1:"+rs.getString(1));
                list.add(m);        
            }
            
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println("1daolist:"+list);
        return list;
    }

Description du phénomène : Cette méthode peut être exécutée vers System.out.println("new ArrayList<menuentity>();");, mais elle n'est pas exécutée dans la boucle while car System.out.println("rs.next( ) "); Il n'y a aucune sortie dans la console, mais l'instruction SQL peut trouver les données dans la base de données, et il n'y a aucun problème avec la connexion transmise par la méthode, car une autre page utilise une connexion avec cette méthode, et une autre la page peut renvoyer des données de l'arrière-plan
Ceci est débogué en contactant Tomcat dans Eclipse

.

Question : Pourquoi n'y a-t-il pas d'exécution dans ce temps ? Quelle peut en être la raison ? Merci! ! !

ringa_leeringa_lee2712 Il y a quelques jours841

répondre à tous(1)je répondrai

  • 我想大声告诉你

    我想大声告诉你2017-05-17 10:09:26

    Statement stmt=con.createStatement();
     ResultSet rs=stmt.executeQuery(sql);

    Ceci n'est-il pas mal écrit

    Essayez d'écrire ceci

    Statement stmt=con.createStatement(sql);
     ResultSet rs=stmt.executeQuery();

    répondre
    0
  • Annulerrépondre