はじめに
SQL ServerはMicrosoftの陣地には違いありませんが、だからと言って、このデータベースエンジンがJavaとの連携方法を知らないわけではありません。実際、SQL Serverは、読者の皆さんが思っている以上にJ2EEアプリケーションで使用されています。SQL Serverをバックエンドとして、Javaアプリケーションサーバと連携してアプリケーションを開発するには、SQL ServerとのJDBC接続を確立する必要があります。
このチュートリアルでは、最も一般的な4つのJavaアプリケーションサーバとSQL Serverとの間にJDBC接続を確立する方法について説明します。最も一般的な4つのJavaアプリケーションサーバとは、OracleのJDeveloper(埋め込みOC4Jサーバ)、Red HatのJBoss、IBMのWebSphere、およびBEAのWebLogicです。SQL Server 2000およびSQL Server 2005 Expressの両方を使って説明します。
基本の手順は、次のとおりです。
- SQL ServerドライバのJARファイルをclasspathに追加する
- SQL Serverデータベースを開始する
- データベースとの接続を確立する
実に簡単だと思いませんか? ただし、JDBC接続の確立に先立ち、使用するSQL Serverのバージョンに適したドライバを見つけてインストールするなど、多少の準備やインストールを行う必要があります。
SQL Serverの設定とアプリケーションサーバの選択
以降に行う手順は、実行するアプリケーションサーバによって、またSQL Serverの設定が済んでいるかどうかによって異なります。まずSQL Serverの設定について説明します。次に最も一般的な4つのアプリケーションサーバとの連携設定について、手順を詳しく示します。
- SQL Server 2000のセットアップとインストール
- SQL Server 2005 Expressのセットアップとインストール
- JDeveloperとSQL Serverの連携を構成する
- JBossとSQL Serverの連携を構成する
- WebSphereとSQL Serverの連携を構成する
- WebLogicとSQL Serverの連携を構成する
SQL Server 2000のセットアップとインストール
- SQL Server 2000 Driver for JDBC Service Pack 3をインストールします。SQL Server JDBCドライバのJARファイル(msbase.jar、mssqlserver.jar、およびmsutil.jar)が、「C:\Program Files\Microsoft SQL Server 2000 Driver for JDBC\lib」ディレクトリにインストールされます。
- SQL Server 2000 Service Pack 3aをダウンロードします。「sql2kdesksp3.exe」ファイルを起動し、ファイルの抽出先のフォルダを指定して、SQL Server 2000デスクトップエンジンをインストールします。このフォルダ内にMSDEディレクトリが作成されます。
- 次に、コマンドプロンプトウィンドウを開き、cdコマンドでMSDEディレクトリに変更し、次のコマンドを実行します。
- コントロールパネルの[管理ツール]→[サービス]で、MSSQLSERVERサービスが開始されていない場合は、このサービスを開始します。次に、SQL ServerがサポートするプロトコルとしてTCP/IPを選択します。このためには、SQL Serverネットワークユーティリティ(C:/Program Files/Microsoft SQL Server/80/Tools/Binn/SVRNETCN.exe)を開始して、TCP/IPプロトコルを選択し、[->]ボタンを使ってこれを[Enabled protocols]テキスト領域に移動します。[Apply]をクリックし、[OK]をクリックして変更を適用後、[Administrative Tools]→[Services]でMSSQLSERVERサービスを再起動します。
setup SAPWD=<sapwd> SECURITYMODE=SQL
<sapwd>
はsaユーザーのパスワードです。SECURITYMODE=SQL
コマンドによって、SQL Server 2000が混合モード認証でインストールされます。混合モード認証の場合、WindowsユーザーアカウントまたはSQL Serverアカウントを使ってSQL Serverにアクセスできます。これに対して、Windows認証を使用すると、接続はWindowsユーザーアカウントだけで行われます。saユーザーはSQL Serverアカウントであるため、混合モード認証が必要です。このコマンドによって、SQL Server 2000がインストールされます。