データベースの準備
データベース連携アプリを作成するためには、以下の準備が必要です。
[1]データベースをインストールするまずは、接続先のデータベースをインストールしておきましょう。
データベース(DBMS)には、商用製品からオープンソースのものまで、さまざまな製品があります。Javaでは、現在よく利用されているデータベース(DBMS)であれば、ほぼ問題なく利用できますが、本稿では検証環境としてMySQL 5.7を利用するものとします。
MySQLは、以下のページからダウンロードできます。
https://dev.mysql.com/downloads/mysql/
ダウンロードしたインストールファイルをダブルクリックすると、インストーラーが起動しますので、あとはほとんどウィザードに沿って進めていくだけです。なんらかの選択/入力が必要な箇所は2点です。
まず、インストールの種類を訊かれる個所がありますので、[Custom]を選択して先に進んでください。その先で、インストールするソフトウェアを訊かれますので、以下のソフトウェアを選択します。Connector/Jは、JDBCドライバーと呼ばれるライブラリで、JDBCからMySQLに接続するために必要となります。
・MySQL Server 8.0.18 – X64
・Connector/J 8.0.18 – X86
インストールするソフトウェアの選択
インストールを進めていくと、Rootアカウントのパスワードを訊かれますので、第3者に類推されにくい値を入力しておきましょう。あとからデータベースに接続する際に必要となる情報なので、忘れないようにしてください。
本稿では、便宜的に「12345」と設定したものとして解説を進めます。
「開発環境の準備(JDK単体)」ページの手順に従って、環境変数PATHに「C:\Program Files\MySQL\MySQL Server 8.0\bin」を追加しておきます。[3]以降では、PATHが設定されていることを前提に、コマンドを紹介しています。
[3]データベースを作成するサンプルを動作するために必要なデータベースを作成しておきましょう。データベースのバックアップファイルsample.sqlは、ここからダウンロードできます。適当なフォルダー(たとえば「d:\」)にコピーした上で、以下のコマンドを実行してください。
> mysqladmin -u root -p CREATE sample Enter password: *****(パスワードを入力) > mysql -u root -p sample Enter password: ***** (パスワードを入力) > source d:\sample.sql
これでsampleデータベースができました。sampleデータベースの配下には、以下のようなmembersテーブルが用意されています。
membersテーブルのフィールドレイアウト | ||
---|---|---|
フィールド名 | データ型 | 概要 |
id | INT | 会員ID(主キー) |
nam | VARCHAR(255) | 氏名 |
sex | CHAR(2) | 性別 |
age | INT | 年齢 |
先ほどインストールしたConnector/J(JDBCドライバー)をアプリにも組み込んでおきましょう。Eclipseであれば、メニューバーの[プロジェクト]-[プロパティ]からプロパティウィンドウを開きます。左ペインから「Javaのビルドパス」を選択し、右ペインから[ライブラリ]タブを選択してください。
プロジェクトのプロパティウィンドウ
[外部JARの追加…]ボタンをクリックして、先ほどインストールしたConnecor/Jの本体を選択します。デフォルトのインストール先を選択しているならば、「C:\Program Files (x86)\MySQL\Connector.J 5.1\mysql-connector-java-8.0.18-bin.jar」です。
選択後、[ライブラリ]タブに「mysql-connector-java-8.0.18-bin.jar」が追加されていれば、ドライバーはプロジェクトに組み込まれています。
以上で、Javaアプリからデータベースを利用するための準備は完了です。
java.sqlパッケージは、標準で有効化されるjava.baseモジュールには含まれません。利用にあたっては、モジュール定義ファイルでrequires宣言しておく必要があります。
module-info.java
module mynavi { ...中略... requires java.sql; }