Redshift JDBC Driverの設定方法
ドライバーの設定方法には下記2つがあるのでそれぞれについて説明します。
- build.gradleにredshift-maven-repositoryから取得する設定を記述する
- 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でアプリケーション開発をしたい方の最初に読む一冊としておすすめします。対象は初心者だけでなく上級者まで幅広く学べるので是非読んでみてください!
髙妻智一
最新記事 by 髙妻智一 (全て見る)
- Polkadot(Substrate)のアドレスとトランザクションについて - 2023-03-09
- 【無料公開】「Goで始めるBitcoin」3章 Bitcoinノードとの通信 技術書典8 - 2020-03-08
- エンジニアがゼロから技術ブログを書くための方法をまとめました - 2019-05-25
コメントを残す