A2A クライアント JDBC ラッパーを使用したスタンドアロン Java アプリケーションの統合

提供されている例で、MySQL ドライバおよびエイリアス jdbcdemo を使用してホスト milocspm.cloakware.com 上で MySQL データベース cspm への接続を表示する接続 URL は以下のとおりです。
capam32
このコンテンツでは、モデルとして提供される例のアプリケーション コードを使用してスタンドアロンの Java アプリケーションで、A2A クライアント JDBC ラッパーを使用する方法を説明します。
歴史的な理由から、コード サンプル、ファイル、および環境変数名で、A2A は CSPM と呼ばれます。
以下の行では、接続 URL のパターンを示します。
cspm:
URL
;CSPMDriver=
target_driver
;CSPMAlias=
alias
:
  • URL
    には、通常のベンダー固有の JDBC URL を指定します。
  • target_driver
    には、JDBC ドライバのクラス名を指定します。
  • alias
    には、接続時に使用する認証情報を表すターゲット エイリアスを指定します。
提供されている例で、MySQL ドライバおよびエイリアス
jdbcdemo
を使用してホスト
milocspm.cloakware.com
上で MySQL データベース cspm への接続を表示する接続 URL は以下のとおりです。
Cspm:jdbc:mysql://milocspm.cloakware.com:3306/cspm;CSPMDriver=com.mysql.jdbc.Driver;CSPMAlias=jdbcdemo
必要な A2A クライアント ファイルを取得するには、A2A クライアントをインストールします。
アプリケーションをコンパイルするには、A2A クライアントに含まれている
cspmclient.jar
ファイルおよび
cloakwareJdbc.jar
ファイルを使用します。
アプリケーションを実行するには、前述の JAR ファイルとベンダー固有の JDBC ドライバ JAR ファイルを使用します。接続が MySQL データベースであるため、この場合は、mysql-connector-java-5.1.8-bin.jar です。
アプリケーションを実行する場合は、以下の JVM オプションを指定して、クライアント設定ファイル
cspm_client_config.xml
の場所を特定します。
-Dcspm_client_config_file=<path>/cspm_client_config.xml
以下の JVM オプションを指定して、ネイティブ コード ライブラリが置かれているディレクトリを特定します。
-Djava.library.path=<path>/cloakware/cspmclient/lib
アプリケーション コード
package com.cloakware.ps.jdbcdemo; import java.sql.*; public class JdbcDemoApp { private static final String JDBC_DRIVER_CLASS_NAME = "com.cloakware.jdbc.JdbcDriver"; private static final String JDBC_URL = "cspm:jdbc:mysql://milocspm.cloakware.com:3306/cspm;CSPMDriver=com.mysql.jdbc.Driver;CSPMAlias=jdbcdemo"; private Connection m_connection = null; public JdbcDemoApp() { try { System.out.println( "instantiating the JDBC driver" ); Class.forName( JDBC_DRIVER_CLASS_NAME ).newInstance(); System.out.println( "invoking the driver to obtain a connection to the database" ); m_connection = DriverManager.getConnection( JDBC_URL ); runDemo(); } catch ( Exception ex ) { ex.printStackTrace(); } finally { try { if ( m_connection != null ) m_connection.close(); } catch ( SQLException ex ) { } } } private void runDemo() { final String QUERY = "select count(*) from init_properties;"; try { System.out.println( "executing query" ); Statement st = m_connection.createStatement(); ResultSet rs = st.executeQuery( QUERY ); while ( rs.next() ) { System.out.println( "result= " + rs.getInt( 1 ) ); } } catch ( SQLException ex ) { ex.printStackTrace(); } } public static void main(String[] args) { new JdbcDemoApp(); } }