みんな大好きSpringBootを使って「Hello world」。
■1.開発ツールのダウンロード
下記のページからSpring謹製のIDE「Spring Tool Suite」(以下STS)をダウンロードしました。
https://spring.io/tools/sts/all
落としたファイルは、7zipなどのイケている解凍ツールで解凍してください。
パスが深いファイルは、うまく解凍できないツールがあるようなのです。
■2.開発ツールの起動
解凍先の「sts-bundle/sts-x.x.xRELEASE/STS.exe」を実行して、開発ツールを起動します。
■3.「Gradle」プラグインを追加インストール。
みなさん(誰?w)がmavenから移行しているのにならって、私も「Gradle」をインストールしてみました。(Gradle。良い解説書を探してます。)
ゾウさんが好きです。Buildshipを使うことにします。
メニューを以下のように選択してインストールしました。
「Help」->「Eclipse Marketplace」->Findに「Gradle」を入力し検索->「Buildship Integration 1.0」
インストール後、STSを再起動するとプラグインが有効化されます。
■4.「SpringBoot」プロジェクト生成ウィザード
STSには超簡単に「SpringBoot」のプロジェクトを作成するツールが用意されています。超便利です。あちょー。
①次のメニューから起動します。
「File」->「New」->「Spring Starter Project」
②STEP1 プロジェクトの基本構成
「Type:」が「maven」になっていたら、「Gradle(Buidship)」に変更してください。他はそのままで大丈夫だと思います。「Next」を押下します。(各項目の意味はいつか探求しますん)
②STEP2 使用するモジュールの選択
ブラウザで「Hello world!」したいので、Web->Vaadinを選択します。
Vaadinは「Java-based Web Framework」(だそう)です。
「javaさえ知っていれば、Html5とかJSを知らなくてもでリッチUIブラウザアプリが作れますよー」という素晴らしいフレームワーク(らしいっす)。Wicketとかと同じ路線ですかね…(いや、むしろWeb版Swing?)
SPA(JS)+REST勢が優位なわが社においてなぜ今・・・。(ФωФ)フフフ・・・。
③STEP3 完了
最後のステップは、何もせずそのまま「Finish」を押下します。
■5.「Hello world!」コードを記述
生成されたプロジェクトを開き、「src/main/java」の「com.example」パッケージに下記のクラスを追加しました。むぅ。Javaですねー。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | package com.example; import com.vaadin.annotations.Theme; import com.vaadin.server.VaadinRequest; import com.vaadin.spring.annotation.SpringUI; import com.vaadin.ui.Button; import com.vaadin.ui.Notification; import com.vaadin.ui.UI; @SpringUI(path="/index.html") @Theme("valo") public class IndexUI extends UI { private static final long serialVersionUID = 3260692370645020385L; @Override protected void init(VaadinRequest request) { setContent(new Button("ごあいさつ", e->Notification.show("Hello world!"))); } } |
■6.実行
上記のクラスができたら、実行してみます。
「com.example.DemoApplication.java」を選択し、
コンテキストメニュー(右クリックメニュー)の「Run As」->「Spring Boot App」を選択すると実行できました。(埋め込みTomcatが起動します)
■7.ブラウザでアクセス
ブラウザで次のURLにアクセスしてください。
「http://localhost:8080/index.html」
ボタンを押下すると「Hello Workd!」と表示されれば成功です。
■8.まとめ
「STS+SpringBoot」を使ってコードをほとんど書かず「Hello world!」できましたー。