2012-03-17 8 views
1

私は軸のJava Webサービスを持っています。これはデータベースからのデータの送受信に使用します。私が知る限り、Webサービスのコンストラクタは、クライアントが接続するときにのみ呼び出され、接続が解除されると、「デストラクタ」が呼び出されます。したがって、クライアントがデータの受信または挿入に接続するたびに、connectToDatabase()メソッドを実行する必要があります。 Webサービスが開始されたとき、クライアントが単にデータを挿入/受信するときに、一度だけ接続するにはどうすればいいですか? Eclipseでそれを行う特別な方法はありますか?AxisのJava Webサービス:起動時にデータベースに接続

+0

接続プールでデータソースを使用することを検討する必要があります。 – Perception

答えて

0

アプリケーションを初めて起動するときにインスタンス化されるオブジェクトを作成する必要があります。そのためにはSpringを使用し、Webサービスの実装クラスをSpring Beanとして公開することができます。メソッドconnectToDatabase()を持つオブジェクトの王を作成するよりも、このオブジェクトのコンストラクタでそのメソッドを呼び出すか、initメソッドとして指定して、このオブジェクトをスプリングコンフィグレーションで宣言します。アプリケーションがデプロイされているとき、springはそのオブジェクトを作成し、このメソッドを1回だけ呼び出します。春の豆として軸のWebサービスを公開する

次のようにします。軸server-config.wsddファイルで

これを指定:

<service name="YouServiceName" provider="java:SPRING" style="wrapped" use="literal"> 

属性provider="java:SPRING"は、実装クラスは、春のBeanとして公開されていることを軸に伝えます。

これが役に立ちます。

関連する問題