wicket with spring boot on azure
TRANSCRIPT
Wicket with SpringBoot on Azure
はじめに
3
背景と目的
4
想定するIoTシステムのモデル
5
学修者と学修シナリオ(案)
6
学修者と学修シナリオ(案)
7
今日のお話
8
今日のお話学修シナリオ(案)にむけた教材のプロトタイプをつくってみた
・せっかくの機会なのでAzureで ※DreamSpark使えると学生がやりやすいはず
・WicketをSpringBootで動かしてみる
・SpringBootをAzure Web Appsで動かしてみる
・Azure Table Storage をJavaから使ってみる9
学習教材の概要(プロトタイプ)
10
学習教材の概要(プロトタイプ)
11
プロトタイプの動作の流れ• Intel Edison(Arduino)でセンサーデータを取得する※温度センサーにしてみたらあまりに変化が緩やかなので光量センサ
• センサーデータをHTTP(POST)でWebAPIに送信する※WebAPIはWicketで簡易実装※WebSocket or 他のプロトコルにチャレンジしたかったけど今回は時間切れ
• WebAPIで受け取ったデータをAzure Storage Tableに格納する※Azure Storage SDK for Javaを利用
• Storage Tableから過去20個分の取得データを取り出して、グラフ化する ※グラフはWicket+WickedChartで簡易実装
• 将来拡張しやすいように、WicketはSpringBootで動作させる
わざわざ作らなくても ○○でできるよ 禁止
13
デモ
14
15
ソースコード要点解説
16
Wicket with Spring Boot
17
Wicket with SpringBoot
18
pom.xml:
19
ServletContextInitializer:
20
WebApplication:
21
Example of WebPage:
22
Spring Boot on Azure
23
SpringBoot on Azure
24
SpringBootServletInitializer:
25
pom.xml:
26
pom.xml:
27
ここまでの設定で、Wicket を使うSpringBootアプリケーションをAzure Web Appsで動作させられる
28
Wicket WebPage as WebAPI
29
Wicket WebPage as WebAPI
30
Azure Storage Table
31
Azure Table Storage (KVS)
32
pom.xml:
33
アカウント作成:
Application.properties:
34
AzureStorageConfig:
35
AzureStorage:
36
Entity:
TableStorageRepository:
38
WickedChart
39
40
GraphPage, TemperatureChart
41
Grove Light sensor with Edison
42
43
44
45
temperature.js
46
おわりに
47
SpringBootでWicketが動く
48
Edisonで数行でセンサーデータとれる
Azureを使ってみて(1)
49
Azureを使ってみて(2)
50
まとめIoTをテーマに、プログラミング初学者~システム開発経験者が学習/学修できる教材のプロトタイプをつくってみた
• WicketをSpringBootで動かしてみた
• SpringBootをAzure Web Appで動かしてみた
• Azure Table Storage をJavaから使ってみた
• Javaが使える日本語フレンドリーな高機能PaaSとして良い感触
51
画像出典