Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Erhalten Sie weiterhin org.hibernate.exception.JDBCConnectionException:Abfrage konnte nicht ausgeführt werden

Hibernate verwendet ein primitives Verbindungspooling Mechanismus , was für Produktionszwecke nicht geeignet ist (das steht sogar in der Logdatei!). Sie sollten immer Verwenden Sie einen Verbindungspooling-Mechanismus, sei es der von Ihrem Container bereitgestellte oder ein in Ihrer Anwendung gebündelter Mechanismus (z. B. c3p0). Die Ausnahme, die Sie sehen, liegt daran, dass MySQL eine "alte" Verbindung geschlossen hat, die Hibernate immer noch verwendet. Sie können versuchen, eine JDBC-URL-Option wie „autoReconnect“ hinzuzufügen, aber das ist wirklich keine langfristige Lösung.

Idealerweise sollten Sie Ihren Container so konfigurieren, dass er die Verbindungen zu Ihrer Anwendung über JNDI bereitstellt. Das geht ganz einfach mit einer "-ds.xml"-Datei in JBoss oder mit einer context.xml für Tomcat.