2009-07-01 5 views
3

JDBC 3および4で動作するjava.sql.Connectionのラッパーを作成するためのいくつかのハックがあります(Sunはいくつかのメソッドと新しいタイプJDBCのインタフェースに)コンパイル時にソースにパッチを当てることがない場合は?JDBC 3および4で動作するjava.sql.Connectionのラッパーを作成します。

私の使用例は、Java 5および6で動作するライブラリを生成する必要があり、実際には2つのバージョンの作成を避けることです。

+0

JDBC 3インターフェイスに書き込むだけの理由はありますか? –

+0

このようなクラスはJava 6ではロードされません(「クラスDBConnection extends Connectionは抽象クラスではなく、createStructを実装していません」) –

答えて

1

試したことがありますが動作する可能性があります。

Java 6バージョンを実装するためのクラスを作成します。 java.sql(NClob、SQLXML、SQLClientInfoException)の新しいクラスに問題があります。これらのクラスを使用しないと仮定すると(Java 5でも同様に)、ダミーの実装を作成して別のjarに入れます。 Java 5のデプロイメントでは、正しくロードされるように、-Xbootclasspathコマンドライン変数を使用してこのjarを参照してください。

ラッパーは、(適切に委任するために)Java 5または6上で実行されているかどうかを知る必要があるため、実行時にインスタンス化された別のクラスですべてのJava 6機能を処理したい(stateデザインパターンを参照してください)

関連する問題