3

私は JDBC について学んでおり、現在 JDBC DataSource と接続プーリングについて調べています。作成するデータソースがアプリケーションで一度だけ作成され、データソースへの参照が必要なすべてのクラスと共有されるようにする必要がありますか? それとも、舞台裏で魔法のようなことをしているのですか?

Java EE サーバーまたは Spring でデータソースを構成すると、データソース オブジェクトが 1 つだけ作成されますか? オブジェクトは JNDI シングルトンに含まれていますか? それとも、必要になるたびに新しいオブジェクトを取得しますか?

4

1 に答える 1

2

DataSourceインスタンスは魔法ではありません。それらを 2 つ作成すると、2 つになり、それぞれに独自の接続プールがあります。JNDI では、名前を付けてオブジェクトを登録するため、定義上、毎回同じオブジェクトが提供されます。多かれ少なかれオーバーブローと考えることができますHashMap。Spring では、singleton がデフォルトのスコープであるためDataSource、Bean のスコープを変更しない限り、singleton が作成され、それを使用するすべてのものの間で共有されます。

于 2013-03-04T17:57:22.893 に答える