Besser ist die zweite Möglichkeit, denn wenn beim Initialisieren von con
oder stat
eine Ausnahme ausgelöst wird, werden sie nicht initialisiert und möglicherweise auf null
initialisiert. In diesem Fall wird mit dem ersten Code NullPointerException
ausgelöst.
Wenn Sie bereits auf Java 7 sind, sollten Sie try-with-resources
, wodurch die Ressourcen automatisch geschlossen werden. Aus dem verknüpften Lernprogramm:
Die try-with-resources-Anweisung stellt sicher, dass jede Ressource am Ende der Anweisung geschlossen wird. Jedes Objekt, das java.lang.AutoCloseable implementiert, das alle Objekte enthält, die java.io.Closeable implementieren, kann als Ressource verwendet werden.
Ab Java 7 müssen Sie den finally1-Block nicht mehr verwenden, um ein Connection- oder Statement-Objekt zu schließen. Stattdessen können Sie die neuen Funktionen 'try-with-resources' nutzen.
Zuerst deklarieren Sie ein Connection- und Statement-Objekt, indem Sie die neue Syntax für einen try-catch-Block wie folgt verwenden:
%Vor%Dadurch müssen Sie sich keine Sorgen machen, die Verknüpfung mit der Datenbank in einem finally-Block explizit zu schließen, weil der jvm das für Sie erledigt.
Habe schöne Codierung ....
Wenn es eine Möglichkeit gibt, ist null
, das müssen Sie überprüfen. Wenn die Möglichkeit nicht besteht, gibt es keinen triftigen Grund, nach dieser Möglichkeit zu suchen.
Sie können Ihren Code auch etwas besser lesbar machen, indem Sie einige Klammern für einzelne Anweisungen weglassen:
%Vor%Tags und Links java jdbc try-catch connection finally