Tomcat のコネクションプールで CData JDBC Driver for CouchDB を構成

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Tomcat のコネクションプールから CouchDB のデータ に接続。

CData JDBC Driver は、JVM 上で動作するWeb アプリケーションと連携するための標準JDBC インターフェースをサポートしています。ここでは、Tomcat のコネクションプールから CouchDB のデータ に接続する方法を説明します。

Tomcat のコネクションプールから CouchDB のデータ に接続

  1. CData JAR ファイルと CData .lic ファイルを $CATALINA_HOME/lib にコピーします。CData JAR ファイルは、インストールディレクトリの lib サブフォルダにあります。
  2. コンテキストにリソースの定義を追加します。ここでJDBC URL を指定します。

    Apache CouchDB 接続プロパティの取得・設定方法

    それでは、Apache CouchDB に接続していきましょう。Url 接続プロパティをApache CouchDB インスタンスのURL に設定します。例:http://localhost:5984

    ユーザー(またはJWT)が特定のデータベースだけにアクセスできるようにしたい場合は、Apache CouchDB インスタンスで"admin_only_all_dbs" オプションを設定し、テーブルをリストするためにCData 製品が必要とする"/_all_dbs" エンドポイントへのアクセス権をすべてのユーザーに付与する必要があります。

    Apache CouchDB への認証

    続いて、認証方法を設定しましょう。CData 製品では、3種類の認証をサポートしています。

    • Basic:基本的なユーザー名 / パスワード認証
    • JWT:JWT 認証
    • None:パブリックなデータベースへの匿名アクセス

    Basic 認証

    データに接続するには、以下のプロパティを設定してください。

    • AuthSchemeBasic
    • User:認証に使用されるApache CouchDB ユーザーアカウント
    • Password:認証するユーザーに関連付けられたApache CouchDB パスワード

    その他の認証方法については、ヘルプドキュメントの「接続の確立」セクションをご確認ください。

    組み込みの接続文字列デザイナー

    JDBC URL の構成については、CouchDB JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行します。

    java -jar cdata.jdbc.apachecouchdb.jar
    

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    以下のリソース定義で指定されたJDBC URL を確認できます。

    
    <Resource name="jdbc/apachecouchdb"   auth="Container" type="javax.sql.DataSource" driverClassName="cdata.jdbc.apachecouchdb.ApacheCouchDBDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" url="jdbc:apachecouchdb:Url=http://localhost:5984;User=abc123;Password=abcdef;" maxActive="20" maxIdle="10" maxWait="-1" />
    

    特定のアプリケーションのみに CouchDB のデータ へのアクセスを許可するには、上記のコードをアプリケーションのMETA-INF ディレクトリにあるcontext.xml に追加します。

    共有リソースの構成の場合は、上記のコードを $CATALINA_BASE/conf にあるcontext.xml に追加します。共有リソースの構成では、すべてのアプリケーションが CouchDB に接続できるようになります。

  3. アプリケーションの web.xml にリソースへの参照を追加します。
    
      CouchDB のデータ JSP
      jdbc/ApacheCouchDB
      javax.sql.DataSource
      Container
    
    
  4. コネクションプールから接続を初期化します。
    Context initContext = new InitialContext();
    Context envContext  = (Context)initContext.lookup("java:/comp/env");
    DataSource ds = (DataSource)envContext.lookup("jdbc/ApacheCouchDB");
    Connection conn = ds.getConnection();
      

Tomcat との連携について

上記の手順では、シンプルなコネクションプーリングのシナリオで CouchDB のデータ に接続する方法を説明しました。その他のユースケースや詳細については、Tomcat のドキュメントに記載されている JNDI Datasource How-To を参照してください。

はじめる準備はできましたか?

CouchDB Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

CouchDB Icon CouchDB JDBC Driver お問い合わせ

CouchDB データを組み込んだパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。