Skip to content

Latest commit

 

History

History
242 lines (165 loc) · 9.33 KB

spring-boot.md

File metadata and controls

242 lines (165 loc) · 9.33 KB

Spring Bootを始めよう

  1. Mebership Service
  2. Recommendations Service
  3. UI

の順にサービスをSpring Bootで作成していきます。

image

本ページで作成するソースコードはこちら(masterブランチ)から参照可能です。

Membership Serviceの作成

image

作業手順

  1. File -> New -> Spring Starter Project image

    • Name : membership
  • Group: com.metflix
  • Artifact: membership
  • Package: com.metflix image
    • Ops -> Actuator
  • Web -> Web image
  1. workspaceを確認 image
  2. src/main/java/com/metflix/MembershipApplication.javaこの内容に変更
  3. src/main/resources/application.propertiesこの内容に変更

Tips

雛形プロジェクトは

curl start.spring.io/starter.tgz \
       -d groupId=com.metflix \
       -d artifactId=membership \
       -d packageName=com.metflix \
       -d baseDir=membership \
       -d dependencies=web,actuator \
       -d applicationName=MembershipApplication | tar -xzvf -

でも生成可能です。この場合、File -> Import -> Maven -> Existing Maven Projectsで生成したフォルダを選択し、プロジェクトをインポートしてください。

動作確認

Package ExplorerのMembershipApplication.javaを右クリック -> Run As -> Spring Boot App image

Consoleを確認 image

http://localhost:4444/api/members/makingにアクセス image

http://localhost:4444/api/members/tichimuraにアクセス image

アカウントを作成

$ curl -XPOST http://localhost:4444/api/members -H 'Content-Type: application/json' -d '{"user":"yamada","age":20}'

作成したアカウントにアクセス

image

Boot Dashboardでアプリケーションの制御を行える。

image

Recommendations Serviceの作成

image

作業手順

  1. File -> New -> Spring Starter Project image

    • Name : recommendations
  • Group: com.metflix
  • Artifact: recommendations
  • Package: com.metflix image
    • Ops -> Actuator
  • Web -> Web image
  1. workspaceを確認 image

  2. src/main/java/com/metflix/RecommendationsApplication.javaこの内容に変更

  3. src/main/resources/application.propertiesこの内容に変更

Tips

雛形プロジェクトは

curl start.spring.io/starter.tgz \
       -d groupId=com.metflix \
       -d artifactId=recommendations \
       -d packageName=com.metflix \
       -d baseDir=recommendations \
       -d dependencies=web,actuator \
       -d applicationName=RecommendationsApplication | tar -xzvf -

でも作成可能です。

動作確認

Package ExplorerのRecommendationsApplication.javaを右クリック -> Run As -> Spring Boot App

image

Consoleを確認

image

http://localhost:3333/api/recommendations/makingにアクセス

image

Membershipサービスにアクセスがあることを確認

image

http://localhost:3333/api/recommendations/tichimuraにアクセス

image

UIの作成

image

作業手順

  1. File -> New -> Spring Starter Project image

    • Name : ui
  • Group: com.metflix
  • Artifact: ui
  • Package: com.metflix image
    • Core -> Security
  • Ops -> Actuator
  • Web -> Web
  • Template Engines -> Thymeleaf image
  1. workspaceを確認 image

  2. src/main/java/com/metflix/UiApplication.javaこの内容に変更

  3. src/main/resources/application.propertiesこの内容に変更

  4. src/main/resource/templatesを右クリック -> New -> File image

  5. Filename: index.html image

  6. src/main/resources/templates/index.htmlこの内容に変更

Tips

雛形プロジェクトは

curl start.spring.io/starter.tgz \
       -d groupId=com.metflix \
       -d artifactId=ui \
       -d packageName=com.metflix \
       -d baseDir=ui \
       -d dependencies=web,thymeleaf,security,actuator \
       -d applicationName=UiApplication | tar -xzvf -

でも作成可能です。

動作確認

Package ExplorerのUiApplication.javaを右クリック -> Run As -> Spring Boot App

image

コンソールを確認

image

http://localhost:8080にアクセス

image

  • ユーザー名: making (他のユーザー名でも可)
  • パスワード: metflix

image

MembershipサービスとRecommendationsサービスにアクセスがあることを確認

image

image

実行可能jarの作成

Boot Dashboardから3つのサービスを停止してください。

image

STSで"Run As -> Spring Boot App"を実行する代わりに、./mvnw packageで実行可能jarファイルを作成して、これを実行することもできます。

$ export WORKSHOP=<your workspace>
$ cd $WORKSHOP/membership
$ ./mvnw clean package -DskipTests=true
$ java -jar target/membership-0.0.1-SNAPSHOT.jar
$ cd $WORKSHOP/recommendations
$ ./mvnw clean package -DskipTests=true
$ java -jar target/recommendations-0.0.1-SNAPSHOT.jar
$ cd $WORKSHOP/ui
$ ./mvnw clean package -DskipTests=true
$ java -jar target/ui-0.0.1-SNAPSHOT.jar