1

Java コードを SQL Server データベースに接続するのに問題があります。InitialContextアプリサーバーから問題なく接続できます..しかし、今はアプリサーバーに接続して、いくつかのenvプロパティを使用してみたいと思います。したがって、スタンドアロンの Java クラスは、次を使用して SQL サーバーに接続します。InitialContext

プロジェクト ライブラリに mssqlserver.jar があります。他の瓶も必要ですか?

コードサンプルを探しましたが、何を入れればよいかわかりませんContext.INITIAL_CONTEXT_FACTORY

Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "what do i put here?");
env.put("java.naming.factory.initial",
"what do i put here?");
...
what other properties would I need?

アプリサーバーには次のプロパティがあります。

datasourceName = mydb
user = myuser
port = 1433
password = mypwd
databaseName = mydb
servername = localhost
4

3 に答える 3

1

あなたはここで正しい軌道に乗っていません。InitialContext は厳密にはアプリケーション サーバーに関するものです。アプリケーション サーバーを使用せずにデータベースに直接接続するには、データベースへの独自の JDBC 接続を作成するか、別の JDBC 接続プールの実装を使用する必要があります。

于 2009-11-09T17:02:01.670 に答える
0

まずはこれだけ使ってみませんDriverManager#getConnection()か?(単純な) クライアント アプリケーションで JNDI を実装して使用することは、比較的わずかな恩恵に対して多大な労力を要します。

平均的なアプリケーション サーバーには独自の JNDI 実装が付属しているため、自分で作成/定義/構成することについてまったく心配する必要はありません。

本当にクライアント アプリケーションで JNDI を使用したい場合は、ここから始めてください。幸運を祈ります。

于 2009-11-09T17:03:08.917 に答える
0

JDBC チュートリアルを参照すると役立つ場合があります。DriverManager を使用して接続を取得できることがわかります。おなじみの JNDI アプローチは、AppServer 環境で提供されるあらゆる種類のサービスへのアクセスを提供するための優れた一般的な抽象化です。スタンドアロン アプリの場合、通常は未加工の API のみを使用します。

于 2009-11-09T17:05:27.000 に答える