Mensagem de erro "Exception in thread "AWT-EventQueue-0""

Galera boa noite!!
Galera tenho e seguinte problema, minha aplicação, estar rodando, mas as vezes ela da erro "Exception in thread “AWT-EventQueue-0” na minha connectionFactery, o erro so aparece depois que eu executo mais de 5 vezes a aplicação, ai tenho que ir no gerenciador do Windows e finalizar todos os processo de “javaw.exe”, para consegui rodar a aplicação novamente, algem sabe como resolver este problema.

Conectado funcionando Conectado funcionando -3 Conectado funcionando -3 Conectado funcionando -3 Conectado funcionando 27 Conectado funcionando -2 Conectado funcionando -1 Conectado funcionando 0 Conectado funcionando 1 Conectado funcionando 1 Conectado funcionando 2 Conectado funcionando 2 Conectado funcionando 11 Conectado funcionando 11 Conectado funcionando -41 Conectado funcionando -10 Conectado funcionando 355 Conectado funcionando -101 Conectado funcionando -101 Conectado funcionando -101 Conectado funcionando -101 Conectado funcionando 51 Conectado funcionando 51 Conectado funcionando 51 Conectado funcionando 26 Conectado funcionando 26 Conectado funcionando 26 Conectado funcionando 26 Conectado funcionando 26 Conectado funcionando Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections" at br.com.sistemahemocomponentes.factery.ConnectionFactery.getConnection(ConnectionFactery.java:19) at br.com.sistema.hemocomponentes.manipilacao.dados.DadosHemocomponentesBancoDAO.<init>(DadosHemocomponentesBancoDAO.java:46) at br.com.sistema.hemocomponentes.manipilacao.dados.DadosHemocomponentesBancoDAO.getLista(DadosHemocomponentesBancoDAO.java:222) at br.com.sistemahemocomponentes.frames.SistemaHEmoComponentesHome.montarTabela(SistemaHEmoComponentesHome.java:449) at br.com.sistemahemocomponentes.frames.SistemaHEmoComponentesHome.<init>(SistemaHEmoComponentesHome.java:415) at br.com.sistemahemocomponentes.frames.SistemaHEmoComponentesHome$7.run(SistemaHEmoComponentesHome.java:473) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections" at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.Util.getInstance(Util.java:381) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:984) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1096) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2048) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:723) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46) at sun.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at br.com.sistemahemocomponentes.factery.ConnectionFactery.getConnection(ConnectionFactery.java:16) ... 13 more

Aparentemente você está abrindo diversas conexões em um loop, estourando o limite máximo do banco de dados.

O correto é abrir uma (e somente uma) conexão e usá-la para fazer todas as consultas necessárias (lembrando de fechá-la após o uso).