sql >> Database >  >> RDS >> Mysql

Blijf org.hibernate.exception.JDBCConnectionException krijgen:kan query niet uitvoeren

Hibernate gebruikt een primitieve verbindingspooling mechanisme , wat niet geschikt is voor productiedoeleinden (dat staat zelfs in het logbestand!). Je moet altijd gebruik een mechanisme voor het poolen van verbindingen, of het nu het mechanisme is dat door uw container wordt geleverd, of het nu een mechanisme is dat in uw toepassing is gebundeld (bijvoorbeeld c3p0). De uitzondering die u ziet, is omdat MySQL een "oude" verbinding heeft gesloten die Hibernate nog steeds gebruikt. Je kunt proberen een JDBC URL-optie toe te voegen, zoals "autoReconnect", maar dat is echt geen oplossing voor de lange termijn.

Idealiter configureert u uw container om de verbindingen naar uw toepassing te leveren via JNDI. Dit is eenvoudig te doen met een "-ds.xml" bestand in JBoss of met een context.xml voor Tomcat.



  1. aanvraag tellen voor documenten in apache solr

  2. Oracle - Selecteer bij een één-op-veel-relatie afzonderlijke rijen op basis van een minimale waarde

  3. Meerdere hostnamen en meerdere privileges?

  4. MySQL-replicatiesnelheid