【プログラミング入門】javaでWEBアプリケーションを作ってみよう!【はじめに】
APIの処理からデータベースへの接続を行うために、データベースの環境を構築していきます。
今回は無償で利用できるMySQLというデータベースシステムを使用します。
では、MySQLのインストールからはじめていきます。
データベースシステムをインストールしよう
まず、データベースのダウンロードから始めます。
今回利用するデータベースはMySQLです。無償で利用することができます。
まず、事前に以下をインストールしてください。MySQLをインストールするのに必要なソフトになります。
Visual C++
「vc_redist.x64.exe」のリンクをクリックしてダウンロードします。
ダウンロードしたexeファイルをダブルクリックしてインストールを行いましょう。
MySQLのダウンロード
以下、リンクよりダウンロードしてください。
Downloadボタンが2つありますが下のほうをクリックしてください。
クリックするとログインを促される画面になりますが、下のほうに「No thanks, just start my download.」のリンクがあるかと思いますので、それをクリックすればダウンロードが開始されます。
MySQLをインストール
ダウンロードが完了すると以下のインストーラファイルが落ちてきていると思います。
「mysql-installer-community-8.0.19.0.msi」
インストーラファイルをダブルクリックします。
設定値はそのままで問題ないので「Next」と「Execute」をどんどんクリックしていきましょう。
途中rootアカウントのパスワード入力する画面になるので、任意のパスワードを入力してください。
今回は「root」を入力しています。
MySQLに接続するときに必要になります。
テーブルを作成しよう
データベースにデータを格納するために、データベースの作成とテーブルの作成を行っていきます。
MySQLのデータベースシステムの構造として、まず大きなくくりとしてデータベースの作成が必要になります。
その後、作成したデータベースの中にテーブルを作成するイメージです。テーブルとは、データを格納しておく箱のようなものと思って頂けたらいいです。
Excelで例えるとまずファイル(データベース)を作成して、その中にシート(テーブル)を作成する感じで思って頂けたらいいです。
これらをはじめに作成しておく必要があります。簡単に言うとデータを格納しておく箱をあらかじめ作っておくイメージです。
これがないとプログラムでデータベースに接続してもデータを保存できないし、取得する対象(箱)がないので取得もできないといった状態です。(何もできません。)
では、始めていきます。
データベースの作成
以下コマンドを入力し、MySQLに接続してください。
mysql -u root -p
パスワードの入力を促されるので、パスワードを入力してEnterを押してください。今回はパスワードをrootで作成したので、rootを入力します。
左側が以下のような表示に変われば、問題なく接続できています。
>mysql
続いて、以下のコマンドを入力し、データベースを作成しましょう。
CREATE DATABASE test_db CHARACTER SET utf8;
「Query OK・・・」のような結果が返ってきていれば、作成成功です。
これで、test_dbという名前のデータベースを作成できました。
テーブルの作成
上記作成したデータベースのテーブルを作成します。
以下のコマンドを入力し、Enterを押してください。
CREATE TABLE test_db.test_table(
test_id INT NOT NULL
, test_info VARCHAR (30)
, PRIMARY KEY (test_id)
);
データベースの作成と同様に「Query OK・・・」が返ってくればOKです。
これでテーブルの作成が完了です。
作成したテーブルについて簡単にご説明します。
イメージとしては、Excelで以下の表の枠を作成した感じです。
上記は例としてデータを入れた感じにしていますが、今は作成したばかりなのでデータは入っていない状態です。ちなみにデータベースの世界では1行のデータのことをレコードと呼びます。
test_idとtest_nameのデータが入る箱を作った形ですね。
先ほど実行したCREATE TABLEの中にINTやVARCHARなど書かれているかと思います。
これらは対象の項目の属性を表しています。
INTの場合は数字が入る、VARCHARの場合は文字が入るといった形です。
NOT NULLは空は許さない指定です。
最後に「PRIMARY KEY」とは対象テーブルの主キーを指しています。
主キーとは、対象の項目の値が決まれば一意となる制約です。
今回作成したテーブルは、test_idの値を指定すれば必ず1レコードだけ取れるといった内容です。
したがって、このように主キーを指定した場合は、対象項目に同じ値のレコードを登録することができなくなります。
簡単にですが以上になります。
最後に
問題なく作成できましたでしょうか?
今回で最低限必要な環境が整いましたので、次回実際にjavaで作成したAPIでデータベースの接続を行ってみたいと思います。
今は空の箱ですが中にデータを登録したり、削除したりなどをしていきます。
WEBアプリケーションですとよくある処理なので、ここを学ぶことができれば基礎的なAPIの処理は習得できるかと思います。
後、詳細に書くと情報量が多くなって混乱してしまうと思い、データベースのことについては簡単にしか説明しませんでした。
もし、需要があれば別途データベースに関する記事も書いてみようかと思います。
次は実際のAPIの処理を作成します。
コメント