thisを読みましたが、どのように動作するのかよくわかりません。 Webアプリケーションの起動時にプロパティファイルを読み込み、接続プールを設定したいとします。明らかに私はこれを一度だけ、一箇所でやりたいので、必要ならば変更することができます。通常のサーブレットでは、初期化コードをサーブレットのinit()メソッドに置くだけですが、Jerseyサーブレットで初期化コードにアクセスする必要はありません。だから私はそれをやりますか?上のリンクのリスナーはどのように機能しますか?Jersey webappの起動時にデータベースを初期化する
答えて
あなたがする必要があることは、ServletContextListenerインターフェイスを実装するJavaクラスを書くことだけです。このクラスは、Webアプリケーションが最初に作成されたときに呼び出される2つのメソッドcontextInitializedメソッドと、破棄されるときに呼び出されるcontextDestroyedメソッドを実装する必要があります。初期化するリソースは、contextInitializedメソッドでインスタンス化され、リソースはcontextDestroyedクラスで解放されます。アプリケーションは、web.xml記述子ファイルで実行されたときにこのクラスを呼び出すように設定する必要があります。
public class ServletContextClass implements ServletContextListener
{
public static Connection con;
public void contextInitialized(ServletContextEvent arg0)
{
con.getInstance();
}//end contextInitialized method
public void contextDestroyed(ServletContextEvent arg0)
{
con.close();
}//end constextDestroyed method
}
これはこれで、アプリケーションがデプロイされるとき、アプリケーションがServletContextClassを呼ぼうとするいくつかのものを同様のcontextInitializedメソッドでの接続やその他のリソースの場所をインスタンス化します
<listener>
<listener-class>com.nameofpackage.ServletContextClass</listener-class>
</listener>
web.xml構成サーブレットのinitメソッドは何をしますか?
起動時にJersey自体を変更する必要がないので、おそらくAbstractResourceModelListenerは必要ありません。あなたが欲しいのはjavax.servlet.ServletContextListenerです。サーブレット要素を追加するのと同じ方法で、listener要素をweb.xmlに追加できます。コンテキスト(Webアプリケーション)が最初に作成され、Jerseyサーブレットが開始される前に、ServletContextListenerが呼び出されます。このリスナーのデータベースに必要なものはすべて実行でき、Jerseyの使用を開始すると準備が整います。
- 1. 起動時のオブジェクト初期化のパターン
- 2. サーバ起動時のデータソースの初期化
- 3. アプリケーションの起動時にライブラリプロジェクトを初期化する
- 4. Jerseyテスト実行時にSpring Beanを初期化する
- 5. サーバ起動時にサーブレットを初期化する方法
- 6. iPhoneアプリの起動時に起動/初期化の手順は何ですか?
- 7. Spring Webアプリケーション:起動時に何かを行う(初期化)
- 8. システム起動時にどのコアが最初に初期化されますか?
- 9. C#はプログラムの起動時にオブジェクトをインスタンス化/初期化します
- 10. サーバ起動時の 'g'と 'graph'変数の初期化
- 11. Ruby gem:起動時に初期化を実行する方法は?
- 12. 再起動せずにWindowsイベントログサービスを再初期化する
- 13. カスタムDependencyPropertyのPropertyChangedCallbackを初期化で起動する
- 14. 実行時に子コンポーネントを動的に初期化する
- 15. アプリの初期化時にタブの内容を初期化する方法
- 16. 最初の起動時にSQLデータベースを作成し、次の起動時にデータベースデータを取得します
- 17. 初期化時のPayPalエラー
- 18. 初期化時のメモリリークメッセージ
- 19. *セカンダリ*初期ASP.Netアプリケーションの起動時にコンパイル(?)を一時停止しますか?
- 20. 静的な文字列を取得する方法アクティビティの起動時にテキストビューを初期化しますか?
- 21. 初期ページのロード時にjQueryリモートタブの内容を初期化する
- 22. 起動時にスプリング統合:ゲートウェイを初期化するにはどうすればよいですか?
- 23. ウィジェットの最初の起動時にアクティビティを起動
- 24. iPad Webappの起動画面
- 25. デバッガがSDLが初期化時に起動すると報告するスレッドは何ですか?
- 26. twitterブートストラップアラート初期化時に非表示
- 27. Entity Frameworkコードのデータベース初期化
- 28. Entity Framework 4.3のデータベース初期化を無効にする
- 29. 初期化時にng-initが動作しません
- 30. fireDateで初期化されたNSTimerが起動しない