コネクションについて、以下に分類して説明します。
コネクションとは
コネクションの接続手段
コネクションの接続
コネクションの切断
コネクションとは、JDBCドライバを使用するアプリケーションがSymfoware Serverにアクセスするために結んだ接続関係のことです。アプリケーションがデータベースシステムとコネクションをもつことにより、そのデータベースシステムの資源を操作することができます。
JDBCドライバを使用するアプリケーションからデータベースに接続するためには、以下の2種類の手段があります。
| パッケージ | API | 概要 | 
|---|---|---|
| javax.sql | DataSourceインタフェース | アプリケーション内でJDBCデータソースを使用して、データベースに接続する方法 | 
| java.sql | DriverManagerクラス | アプリケーション内で、接続先のURLを直接指定する方法 | 
アプリケーションサーバ上で運用する場合、DataSourceインタフェースの利用を推奨します。
本書では、DataSourceインタフェースを利用した場合を主に説明します。
データソースの設定方法については、“5.2 ネーミングサービスとJDBCデータソース登録ツール”を参照してください。
JDBCドライバを使用するアプリケーションとデータベースとのコネクションの接続は、DataSourceインタフェースのgetConnectionメソッドで行います。また、コネクションを接続することにより、SQL文を実行することができます。
JDBCドライバを使用するアプリケーションとSymfoware Serverとのコネクションの切断は、Connectionインタフェースのcloseメソッドで行います。コネクションの切断は、DataSourceインタフェースのgetConnectionメソッドで接続したコネクションに対して実行できます。また、トランザクションは終了した状態で実行します。トランザクション中にコネクションが切断されると、トランザクションも終了します。
以下に、コネクションのプログラミング概要を示します。
Hashtable env = new Hashtable();                                   (1)
env.put(Context.INITIAL_CONTEXT_FACTORY
       "com.fujitsu.symfoware.jdbc2.jndisp.SYMContextFactory");    (1)
env.put(Context.PROVIDER_URL,"SYM://myhost:26600");                (1)
InitialContext ctx = new InitialContext(env);                      (1)
DataSource ds = (DataSource)ctx.lookup("jdbc/ds1");  (2)
Connection con = ds.getConnection();                               (3)
    :
con.setAutoCommit(false);                                          (4)
    :
con.commit();                                                      (5)
con.close();                                                       (6)(1) JNDI環境の指定
(2) JDBCデータソースの取得
(3) データベースへの接続
(4) 自動コミットモードの無効化
(5) トランザクションのコミット
(6) データベースへの接続の切断
各項目の詳細な設定方法については、“3.2 データベースへの接続/切断”を参照してください。