Edited at

Spring 5 & Spring Boot 2ハンズオン準備手順


2018-11-27 Spring 5.1 + Spring Boot 2.1にアップグレードしました!


ハンズオンでは、下記の準備が済んでいるご自身のノートPCをお持ちください。

何か準備について不明点がありましたら、Twitterで僕のアカウント@suke_masaまでリプライかDMをいただければお答えします!


スライドのダウンロード

最初の30分間で利用する、Spring概要講義の資料です。後のハンズオンでも参考にするために、下記のURLから手元にダウンロードしておくと便利です。

https://www.slideshare.net/masatoshitada7/pivotalspring-framework-51-spring-boot-21-jjugccc


事前にインストールするもの

PCは64ビットOSでメモリ4GB以上を推奨します。OSはWindows/macOS/LinuxのいずれでもOKです。



  • JDK 11


    • ZuluやAdoptOpenJDKなど、どのビルドでもおそらく動くと思いますが、僕はリンク先にあるOracleビルドのOpenJDKを利用しています

    • 環境変数JAVA_HOMEおよびPATHを設定してください

    • IDEにもJDK 11を設定しておいてください



  • IDE(下記2点のいずれか)



    • IntelliJ IDEA


      • Ultimate Editionを推奨しますが、Community EditionでもOKです




    • Pleiades All in OneのEclipse 2018-09版


      • [Java]の[Standard Edition]でOKです

      • 通常のEclipseやSpring Tool Suiteは、JDK 11関連の設定やプラグインの追加が煩雑なため、Pleiades All in Oneをお勧めします



    • IDEは最新版をインストールしてください。古いバージョンの場合、JDK 11に対応していなかったり、JUnit 5で記述しているテストが実行できないことがあります。

    • 文字コードはUTF-8に設定してください。



  • curlコマンド(演習6のみ)


    • Windowsの場合は http://www.paehl.com/open_source/ から「CURL 7.xx.x」の「Download WITHOUT SSL」を選択してダウンロードし、環境変数PATHを設定しておいてください。

    • macOSの場合はデフォルトでインストール済みです。



  • jqコマンド(演習6のみ)


    • Windowsの場合は https://stedolan.github.io/jq/download/ からダウンロードし、ファイル名を「jq.exe」に変更後、環境変数PATHを設定しておいてください。

    • macOSの場合はHomebrewコマンド brew install jq でインストールできます。




データベースおよびアプリケーションサーバーは、組み込みのもの(H2、Embedded Tomcat)を使うのでインストールの必要はありません。



ソースコードのクローン

下記のコマンドで、GitHubからクローンしてください。

$ git clone https://github.com/MasatoshiTada/spring5-boot2-handson.git


ソースコードのインポート(Eclipseの場合)

(1) Eclipseを起動します。

(2) [ファイル]-[インポート]を選択します。

(3) [Maven]-[既存Mavenプロジェクト]を選択して[次へ]を選択します。

eclipse01.PNG

(4) [ルート・ディレクトリー]の[参照]ボタンをクリックして、クローンした[spring5-boot2-handson]フォルダを選択します。

eclipse02.PNG

(5) [01-spring5]・[02-spring5-answer]・[03-boot2]・[04-boot2-answer]の4つのプロジェクトがすべて表示され、チェックが入っていることを確かめて[完了]を選択します。

eclipse03.PNG

(6) プロジェクトのインポートが始まります。Maven Centralからライブラリのダウンロードを行うため、しばらく時間がかかります。


ソースコードのインポート(IntelliJ IDEAの場合)

(1) IntelliJ IDEAを起動し、[Import Project]を選択します。

スクリーンショット 2018-07-08 17.23.48.png

(2) クローンした[spring5-boot2-handson]フォルダを選択します。

idea01.png

(3) [Import project from external model]-[Maven]を選択して[Next]を選択します。

スクリーンショット 2018-07-08 17.05.08.png

(4) [Search for projects recursively]にチェックを入れて[Next]を選択します。

スクリーンショット 2018-07-08 17.06.29.png


次の(5)の前に下記のような画面が出たら、そのまま[Next]を選択してください。そうすると、(5)の画面になります。


スクリーンショット 2018-12-10 10.32.04.png

(5) [01-spring5]・[02-spring5-answer]・[03-boot2]・[04-boot2-answer]の4つのプロジェクトがすべて表示され、チェックが入っていることを確かめて[Next]を選択します。


上記4つのプロジェクトが一覧に表示されていない場合、(2)で選択したフォルダが間違っている可能性があります


スクリーンショット 2018-07-08 17.19.55.png

(6) そのまま[Finish]を選択します。

スクリーンショット 2018-07-08 17.23.02.png

(7) プロジェクトのインポートが始まります。Maven Centralからライブラリのダウンロードを行うため、しばらく時間がかかります。


解答例の実行確認

(1) 02-spring5-answerプロジェクトのcom.example.Mainクラスにmain()メソッドがあるので、実行してください。


Eclipseの場合、[Run As]-[Java Application]で実行してください。


(2) コンソールを確認してください。スタックトレースなどが出ておらず、最後に「情報: Starting ProtocolHandler ["http-nio-8080"]」と表示されていれば、組み込みTomcatがポート番号8080で正しく起動しています。

スクリーンショット 2018-07-08 18.17.35.png

(3) Webブラウザで http://localhost:8080/sample/ にアクセスします。ログイン画面が表示されるので、メールアドレス admin@example.com 、パスワード admin でログインしてください。

(4) 下記のように、5人分の顧客情報が表示されれば成功です。

スクリーンショット 2018-07-08 18.20.43.png

(5) main()メソッドを停止してください。これで準備手順は以上です。


ハンズオンの開始

(1) まずはスライドを一通り読んでください。

(2) 01-spring5/todo-1.mdが演習1の手順です。