Mysql
 sql >> Database >  >> RDS >> Mysql

Continua a ricevere org.hibernate.exception.JDBCConnectionException:impossibile eseguire la query

Hibernate utilizza un pool di connessioni primitivo meccanismo , che non è adatto per scopi di produzione (lo dice anche nel file di registro!). Dovresti sempre usa un meccanismo di pool di connessioni, sia quello fornito dal tuo container, sia esso un meccanismo in bundle nella tua applicazione (c3p0, per esempio). L'eccezione che stai vedendo è perché MySQL ha chiuso una "vecchia" connessione che Hibernate sta ancora utilizzando. Puoi provare ad aggiungere un'opzione URL JDBC, come "autoReconnect", ma in realtà non è una soluzione a lungo termine.

Idealmente, dovresti configurare il tuo container per fornire le connessioni alla tua applicazione tramite JNDI. Questo può essere fatto facilmente con un file "-ds.xml" in JBoss o con un context.xml per Tomcat.