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

时间秒杀一切 提交于 2019-12-13 03:57:51

问题


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();
    }

回答1:


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.



来源:https://stackoverflow.com/questions/53966566/why-is-it-sending-me-an-unclosed-connection-error-when-everything-should-be-clea

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!