GradleでRedshift JDBC Driverの取得と設定方法




Redshift JDBC Driverの設定方法

ドライバーの設定方法には下記2つがあるのでそれぞれについて説明します。

  1. build.gradleにredshift-maven-repositoryから取得する設定を記述する
  2. AWSコンソールのRedshiftページの「クライアントの接続」タブから取得してプロジェクト内のディレクトリに置く

application.yaml(.properties)の設定

上記2つのどちらの設定でもapplication.yamlの設定は変わらないので先に載せておきます。

spring:
  datasource:
    driver-class-name: com.amazon.redshift.jdbc42.Driver
    url: jdbc:redshift://sample.okmijnuhb.ap-northeast-1.redshift.amazonaws.com:5439/sample
    username:user
    password: pass
  • driver-class-name:Redshift Driverのクラス名を指定します。com.amazon.redshift.jdbc.Driverでも可能です。
  • url:JDBC URLを設定します。Redshiftのコンソールページから確認することができます。
  • username:接続ユーザー
  • password:接続時のパスワード

redshift-maven-repositoryから取得する場合

これがもっとも簡単な方法です。ネットに全然情報が出ていないのでこれでやるのがいいかと思います。

build.gradleに下記を記述します。maveCentoral()はデフォルトで指定されているリポジトリです。このリポジトリにはRedshiftのドライバーが入っていないのでリポジトリを追加します。

あとはcompileとruntimeに下記プラグインのURLを設定するだけです。

詳細な説明はAWSのドキュメントに書いていたので参考にしてください。

関連情報:http://docs.aws.amazon.com/ja_jp/redshift/latest/mgmt/configure-jdbc-connection-with-maven.html

repositories {
	mavenCentral()
        maven{ url 'http://redshift-maven-repository.s3-website-us-east-1.amazonaws.com/release' }
}

dependencies {
    compile('com.amazon.redshift:redshift-jdbc42-no-awssdk:1.2.10.1009')
    runtime('com.amazon.redshift:redshift-jdbc42:1.2.10.1009')
}

AWSコンソールからドライバーを取得する場合

ドライバーは下記画像の「クライアントの接続」から取得できます。

取得したドライバーをルートディレクトリのlibs配下におきます。そしてbuild.gradleに下記を記述するだけです。

dependencies {
	compile fileTree(dir: 'libs', include: '*.jar')
}

まとめ

Redshiftのドライバーの情報がネットに全然なかったので書きました。前者の方が設定が簡単なのでオススメです。

おすすめ書籍

JPAに関して体系的に学べる良い書籍だと思います。良くあるSpring系書籍ですとJPAは少ししか紹介がありませんが丸々一冊JPAに関してなので詳細な解説がされています。内容はJPAと他のORMとの比較から始まりセットアップ、実装の仕方まで幅広く網羅されています。これからJPAで開発を初めてみようかなと考えている方は一読することをオススメします!

Springの概要からインストール方法、各コア機能(Security, Sessionなど)の解説が体系的にまとめられています。2018年に出版されたばかりなので情報も新しいです。これからSpring Bootでアプリケーション開発をしたい方の最初に読む一冊としておすすめします。対象は初心者だけでなく上級者まで幅広く学べるので是非読んでみてください!

 

The following two tabs change content below.

髙妻智一

2013年CyberAgent新卒入社 スマホゲームを作る子会社に所属し、サーバーサイドのエンジニアを担当。2年目の終わりから新規子会社の立ち上げに参加し、サーバーサイドのエンジニアリーダーとしてサービースのリリースから運用までを担当。 2018年仮想通貨のスマホウォレットを提供するGinco Incにブロックチェーンエンジニアとして入社。






よく読まれている関連記事はこちら




コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です