【SpringBoot入門】 第2回 「サンプルプログラムを動かそう!」

こんにちは。タグボード開発チームのワシヅカです。

花粉が徐々に舞ってまいりました。花粉症とはかれこれ10年以上の付き合いなので敏感です。舞ってます。花粉症になり始めの人は、自分が花粉症になっていることをかたくなに認めないけど、なんででしょう。認めれば楽になるのに…。

 

さて、第2回はサンプルプログラムを動かしていきましょう!

今回はデータベース(MySQL)へアクセスするサンプルを動かそうと思います。

 

0.前提

 

1.SpringToolSuit(STS)を起動する

早速、第1回でインストール&日本語化したSTSを起動しましょう。

STS.exeをダブルクリックし、ワークスペースを選択します。(基本デフォルトのままでOKです。)
STS.exeはショートカットを作っておいても良いかもしれませんね。

2.サンプルプログラムを入手する

STSが起動すると「ダッシュボード」が表示されると思いますので、その中の「IMPORT GETTING STARTED GUID」をクリックします。

もし、前回ダッシュボードを閉じてしまって、

表示されない場合は、以下のボタンからダッシュボードを表示することができます。

 

下のダイアログが表示されますので、「Accessing Data Mysql」を選択し、「Finish」ボタンをクリックします。

 

サンプルプログラムのインポートが始まりました。インポート始まると下の2つのプロジェクトが左に表示されます。

  • gs-accessing-data-mysql-complete
  • gs-accessing-data-mysql-initial

3分ぐらいでインポートが終わります。STSの右下にプログレスバーが表示されますので完了まで少し待ちましょう。

 

 

3.サンプルプログラムを確認する

インポートが完了したら、サンプルプログラムを動かしましょう。2つインポートされたプロジェクトのうち、「gs-accessing-data-mysql-complete」を動かします。※「gs-accessing-data-mysql-initial」は中身が空っぽで枠組みだけとなりますので注意してください。

 

「gs-accessing-data-mysql-complete」の階層を開いていくと、以下のようなJavaプログラムと「application.properties」がありますので、ファイルが存在することを確認しておきましょう。「application.properties」は、重要な設定ファイルですので意識しておきましょう。

 

4.サンプルプログラムを実行する

前置きが少し長くなりましたが、いよいよ実行します。

プロジェクトを右クリックし、[実行]→[Spring Boot アプリケーション]を選択します。

前もってお伝えしておきますが、このまま実行しますとエラー(Exception)が発生します。意識しておきましょう。

 

 

実行する際、「Windows ファイアウォール」の警告が表示されますので、「アクセスを許可する」でアクセス可能にしてあげましょう。

 

 

 

5.実行ログを確認してみましょう

予定通りエラーが発生したようです。実行ログをじっくり眺めて見てください。

SQLExceptionが発生していますね。

「Access denied for user ‘springuser’@’localhost'(using password: YES)」

と表示されています。

そうです。データベースの接続ユーザーが居ないんですね。

データベースへの接続設定はどこに書かれているんでしょうか?

 

 

6.設定ファイル「application.properties」を確認してみましょう

さすがです。そう。「application.properties」に書かれています。

ちょっと覗いてみましょう。ふむふむ。バッチリ接続先、ユーザー、パスワードが書かれていますね。

ちなみに「spring.jpa.hibernate.ddl-auto=create」は自動でDDL(テーブル作成用SQLなど)を発行しますよという設定です。(create以外にも設定値はありますが、今回細かい内容は割愛します。)

今回は設定はいじらずに、このままにしておきます。

 

 

7.MySQLの環境を整える

実行しているプロジェクトがどのような設定でMySQLへ接続しているかわかりましたので、MySQL側の環境を整えておきましょう。

今回の場合は、以下のSQLを実行することで一通りの環境が整います。

 

今回は「A5 SQL Mk-2」というツールを使って実行します。
(この辺はざっくりと紹介します。)

 

このとき、作成したデータベースにはテーブルは1つもできていないことを確認しておきましょう。

 

 

8.プロジェクトを再度起動する

MySQL側の環境設定が整いましたので、再度実行しましょう。

再実行は、以下の赤ボタンから実行しましょう。停止-実行を行ってくれます。

手順4と同じ手順でも実行できますが、2重起動してしまうとエラーになってしまいますので注意してください。

MySQL側の設定に問題がなければ、「Tomcatが立ち上がってアプリケーションが開始したよ」とログ出力されます。以下の2行が表示されているか確認しましょう。

Tomcat started on port(s): 8080 (http)
Started Application in 3.777 seconds (JVM running for 4.538)

 

 

9.アプリケーションを動かしてみる。

起動中のWebアプリケーションを動かしてみましょう。

まずは

http://localhost:8080/demo/all

へ、ブラウザからアクセスしてみましょう。[]と表示されたと思います。

 

次に以下のURLへアクセスしてみましょう。

http://localhost:8080/demo/add?name=user01&email=email01

と表示されたと思います。

それではもう一度

http://localhost:8080/demo/all

へアクセスしてましょう

 

おぉ!Json形式のデータが表示されました。念のためデータベースも確認しておきましょう。

「user」というテーブルが作成され、先ほどURLのパラメータとして渡した、「user01」と「email01」がしっかり登録されています。

 

10.まとめ

お疲れ様でした!少し長くなりましたが、うまくアプリケーションを動かすことができましたでしょうか?

今回は、動かすところまでで終わりにします。

 

次回は、このサンプルプログラムの中身を追いかけたいと思います。

【SpringBoot入門】 第3回 「サンプルプログラムを読み解こう!(その1)」

以上、タグボード開発チームのワシヅカでした。



コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください