1

場合によっては、Tomcat の再起動によってアプリケーションがすぐに停止し、Oracle db で消費するデータが 1 つのエラー状態を維持することがあります。したがって、Tomcat が停止したら、状態を処理するのに役立つ方法があるかどうかを知りたいです。不明なため、実際のイベントは tomcat の停止手順で発生します。Tomcat が停止したときに何かが起こるようにする方法がわかりません。

4

2 に答える 2

2

おそらくLifecycleListener、Tomcat アプリケーション用に を登録できます (リンク)。ライフサイクル リスナーは、コンテキストが読み込まれたときと閉じられた直後に呼び出されます。

これは、より複雑な説明のリンクです。contextInitializedインターフェイスのおよびcontextDestroyedメソッドを参照することをお勧めしServletContextListenerます。

于 2012-06-12T01:54:33.960 に答える
2

通常の再起動を行っている場合は、shutdownhook を登録して、サーバーがアプリを強制終了する前に実行できるはずです。

詳細については、javadoc を参照してください: http://docs.oracle.com/javase/6/docs/api/java/lang/Runtime.html#addShutdownHook(java.lang.Thread )。

次のようにシャットダウンフックを追加できます。

Runtime.getRuntime().addShutdownHook(new Thread(new Runnable(){
    public void run() {
         // clean-up logic
    }
}));
于 2012-06-12T01:45:06.580 に答える