Java - Hibernate - desconexión de la bbdd tras 8 horas

 
Vista:

Hibernate - desconexión de la bbdd tras 8 horas

Publicado por Newbie83 (37 intervenciones) el 17/12/2016 11:54:24
Buenos días.

He desarrollado una aplicación web Java 6 con Hibernate 3, en un servidor Apache Tomcat. Todo funciona perfectamente pero al cabo de 8 horas de inactividad, la conexión con el servidor se pierde.

He leído por ahí que en el archivo de configuración se puede indicar, en la url de conexión, un parámetro llamado autoReconnect=true; pero esto no me ha funcionado.

¿Esta desconexión automática la realiza el driver de conexión de mysql? ¿es cosa de hibernate?

Agradecería muchísimo un poco de orientación en este tema.

Observación: no utilizo Spring en la aplicación, tan solo Hibernate 3.

Muchas gracias y saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Hibernate - desconexión de la bbdd tras 8 horas

Publicado por Newbie83 (37 intervenciones) el 29/12/2016 15:15:39
Hola a todos.

Encontré la solución a este problema.

Las 8 horas de inactividad las establece mySQL. Esta opción es configurable pero no es la mejor solución para tratar el problema. La mejor solución es utilizar un pool de conexiones. En mi caso he utilizado C3P0.

En el pack de descarga de la versión de Hibernate oficial viene una carpeta llamada Optional, que incluye las librerías de este pool. Se agregan al classpath del proyecto y finalmente se indica en el xml de hibernate que ha utilizarse este pool, mediante unas cuantas etiquetas:

1
2
3
4
5
<property name="hibernate.c3p0.min_size">5</property>
<property name="hibernate.c3p0.max_size">20</property>
<property name="hibernate.c3p0.timeout">1800</property>
<property name="hibernate.c3p0.max_statements">50</property>
<property name="hibernate.connection.provider_class">org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider</property>

Con esto se soluciona el problema de la desconexión a las 8 horas.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar