简体   繁体   中英

Why is it sending me an unclosed connection error when everything should be clean?

I have a basic one to one mapping. When i try to extract information with the foreign key the first time i run the program i get an error message:ERROR: Connection leak detected: there are 1 unclosed connections upon shutting down pool jdbc:mysql://localhost:3306/novabaza?useSSL=false&serverTimezone=UTC Exception in thread "main" java.lang.NullPointerException at oto_otm_mtm.Blogic.main(Blogic.java:46). Second time i run the progam it always goes smoothly.

Tried to close the session then begin a new one because i thought that the problem is that I'm trying to retrieve data from a base that doesn't exist. Nothing changed.

         try {

    session.beginTransaction();
    session.save(student);
    session.save(laptop);
    session.getTransaction().commit();
            session.close();


    session = sf.getCurrentSession();
    session.beginTransaction();

    Student myStudent = session.get(Student.class, 2);
    lpa = myStudent.getLaptop(); /*Eclipse says that the problem is 
                                       here though i dont understand why.*/

    System.out.println(lpa.getVrsta());

    session.close();

    } finally {
        sf.close();
    }

You are closing the session but you are not closing the established database connection. Hence the connection leak. Please close the database connection. This will resolve the issue.

A titbit is to in your above code, have all your statements within a single transaction.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM