JDBCでconnectionやstatementのclose()は
何か処理を行うたびに閉じたほうがいいんでしょうか?

それともプログラムの終了時に閉じるべきでしょうか?