事先声明:本人的问题是由于代码有bug造成,如果各位确定自己的代码没问题,想从数据库配置等方面解决问题的话请寻找其它方法。
正确代码:
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
EntityManagerFactory emf = (EntityManagerFactory) wac.getBean("entityManagerFactory");
EntityManager em = emf.createEntityManager();
。。。
em.close();// 关键代码,关闭连接
之前没有最后一句代码,所以每执行一次查询,就会多出一个连接。
引起这种问题的具体情况多种多样,本人出现的情况只能提供一个思路供大家参考。
补充:查询当前连接数的SQL:show full processlist; 或 show status like 'Threads_connected'; 可以用来进行验证