HibernateException:连接太多,使用c3p0

我使用c3p0创建了hibernate应用程序来访问我的数据库,

这是我的hibernate.cfg.xml

     true org.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/example ****** 5 20 3000 50 300 true SELECT 1 *******         

这是我的HibernateUtil文件。 我把它命名为SessionFactoryBuilder.java

 import org.hibernate.SessionFactory; import org.hibernate.boot.registry.StandardServiceRegistryBuilder; import org.hibernate.cfg.Configuration; public class SessionFactoryBuilder { private static SessionFactoryBuilder instance; private static SessionFactory sessionFactory; private SessionFactoryBuilder() { buildConfig(); System.out.println("hehehehe"); } private static void buildConfig() { Configuration configuration = new Configuration().configure(); StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder() .applySettings(configuration.getProperties()); sessionFactory = configuration.buildSessionFactory(builder.build()); } public static SessionFactoryBuilder getInstance() { if(instance == null) { instance = new SessionFactoryBuilder(); } return instance; } public SessionFactory getSessionFactory() { return sessionFactory; } } 

当我使用这个SessionFactoryBuilder访问我的数据库时,我得到了“太多连接”

这是我如何使用它的一个例子,

 ReportTypeService reportTypeService = new ReportTypeService(); List list = reportTypeService.getAllReportTypes(); for(int i=0;i<list.size();i++){ out.print("Type - "+list.get(i).getType()); } 

这不是一直存在的。但是当它出现时,与数据库的连接已经消失。

有什么想法吗?