0

UDP を使用してデータグラム パケットを受信し、それらを処理し、管理者が解析されたデータを表示できるようにするアプリケーションを設計しています。

現時点では、UDP パケットを受信するためのスレッドを 1 つ作成しました。スレッドは ServletContext に格納され、ServletContextListener の contextInitialized() で開始されます。私の次のステップはそれを解析することですが、Spring のサービス (@Service) を使用したい限り、指定されたサービスへの参照を受信者のスレッドに挿入する方法がわかりません。

Service で ServletContext の参照を取得し、受信者のスレッドで作成された Service への参照を設定できることは知っていますが、これを行う正しい方法はありますか? (もっと良い方法はありますか?)

アドバイスありがとう。

4

1 に答える 1

1

UDP パケットをリッスンするスレッドを起動して管理するサービスのようなクラスを設計します。

このサービスは、Spring コンテキストから開始されますContextLoaderListener

このようにして、Web アプリケーションとは関係のない方法で UDP レイヤーを開発し、それを非 Web コンテキストで再利用できるようにすることができます。

リスナーで自分でスレッドを開始し、それを ServletContext に貼り付けることは、さまざまな懸念事項のように思えます。

于 2012-09-21T21:21:05.890 に答える