# Dauerhafte Datenbankverbindung - Timeouts?



## miketech (1. Jan 2007)

Hi zusammen,

erstmal frohes neues Jahr 2007! Kater schon ausgeschlafen? 

Ich habe ein Programm geschrieben, welches zu Beginn eine Verbindung zu einer Datenbank herstellt und immer mal wieder Anfragen an die Datenbank sendet. D.h. es wird nicht bei jeder Anfrage eine neue Verbindung hergestellt.

Meine Frage ist nun: Kann es zu Timeouts bei der Verbindung kommen? Dass das Datenbanksystem sagt: Ich habe nun 2 Stunden keine Anfrage bekommen, nun breche ich die Verbindung ab?

Wie kann ich das überprüfen, bevor ich meine Anfrage sende, damit ich ggf. wieder die Verbindung herstellen kann?

Gruß

Mike


----------



## SlaterB (1. Jan 2007)

Connection.isClosed()?

oder in die API schauen was noch so da ist..,
oder beim Zugriff die Exception abfangen


übrigens sind ja ConnectionPools ein recht hohes Feature 
und die benutzen doch wohl auch langlebige Verbindungen, sollte also ok sein


----------



## hupfdule (2. Jan 2007)

SlaterB hat gesagt.:
			
		

> übrigens sind ja ConnectionPools ein recht hohes Feature
> und die benutzen doch wohl auch langlebige Verbindungen, sollte also ok sein



Prinzipiell kann die DB aber immer die Verbindung schließen, wenn sie der Meinung ist, das soll so sein. Von daher sollte man bei langlebigen Verbindungen immer testen, ob diese wirklich noch aktiv sind (oder gleich einen bereits vorhandenen Poolmanager verwenden, dann brauch man sich nicht selbst drum kümmern).


----------



## miketech (2. Jan 2007)

Hi,

was heißt einen Poolmanager verwenden? Was kann ich denn dafür verwenden, wenn ich nicht gerade einen Anwendungsserver einsetzen möchte?

Gruß

Mike


----------



## hupfdule (2. Jan 2007)

Zum Beispiel proxool. Auch von Apache gibt es einen Poolmanager. Du brauchst dafür keinen Applikationsserver. Im Falle von proxool ist das ein Proxy, den du wie den eigentlichen JDBC-Treiber verwendest.


----------

