有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Entitymanager,连接太多

我只为整个程序创建一个会话工厂,并在每次需要持久化/更新/查询smth时创建会话工厂。一个新的实体管理器,但我总是得到一个对多连接错误。有人能给我一个告别吗?在我看来,增加MySql中允许的连接数并不是最好的解决方案。我使用C3P0进行池化


共 (1) 个答案

  1. # 1 楼答案

    每当调用EntityManager时,尝试使用这样的Try-catch-finally模板

    EntityManager em = ... //However you get an em.
    try {
        em.getTransaction().begin();
    
        // ...  Put your persistence code here.
    
        em.getTransaction().commit();
    } catch (Exception ex) {
        em.getTransaction().rollback();
        throw ex;
    } finally {
        em.close();
    }