はじめに
SpringBootはとっつきやすいJavaのフレームワークです。
Strutsの導入よりも楽なので指導しやすそう。
実装で行き詰まっても流行りなので大体検索で出てくる。
学習コストはそれなりにかかるが、とても楽しいThymeleafが使用できる!
導入 Part2まで進めば楽しいコーディング生活が送れる。
導入 Part1
「SpringBootの開発環境を構築しよう!」をテーマにするならば下記の用意をする。
ツール | ツール名 |
---|---|
IDEA | IntelliJ |
ビルド | Gradle 3.x |
JDK | OracleJDK 1.8 |
IntelliJには下記を追加しておく。
プラグイン | 内容 |
---|---|
lombok | getter/setter等の補完 |
resources_jp.jar | 日本語化 |
JDKとIntelliJのインストール完了までに1時間
Gradleのインストール、IntelliJまでへのセッティングに1時間
IntelliJのカスタマイズに1時間
合計3時間といったところでしょうか。
spring-boot-starter
name |
---|
spring-boot-starter-activemq |
spring-boot-starter-actuator |
spring-boot-starter-amqp |
spring-boot-starter-aop |
spring-boot-starter-artemis |
spring-boot-starter-batch |
spring-boot-starter-cache |
spring-boot-starter-cloud-connectors |
spring-boot-starter-data-cassandra |
spring-boot-starter-data-couchbase |
spring-boot-starter-data-elasticsearch |
spring-boot-starter-data-gemfire |
spring-boot-starter-data-jpa |
spring-boot-starter-data-mongodb |
spring-boot-starter-data-neo4j |
spring-boot-starter-data-redis |
spring-boot-starter-data-rest |
spring-boot-starter-data-solr |
spring-boot-starter-freemarker |
spring-boot-starter-groovy-templates |
spring-boot-starter-hateoas |
spring-boot-starter-hornetq |
spring-boot-starter-integration |
spring-boot-starter-jdbc |
spring-boot-starter-jersey |
spring-boot-starter-jetty |
spring-boot-starter-jooq |
spring-boot-starter-jta-atomikos |
spring-boot-starter-jta-bitronix |
spring-boot-starter-jta-narayana |
spring-boot-starter-log4j2 |
spring-boot-starter-logging |
spring-boot-starter-mail |
spring-boot-starter-mobile |
spring-boot-starter-mustache |
spring-boot-starter-parent |
spring-boot-starter-redis |
spring-boot-starter-remote-shell |
spring-boot-starter-security |
spring-boot-starter-social-facebook |
spring-boot-starter-social-linkedin |
spring-boot-starter-social-twitter |
spring-boot-starter-test |
spring-boot-starter-thymeleaf |
spring-boot-starter-tomcat |
spring-boot-starter-undertow |
spring-boot-starter-validation |
spring-boot-starter-velocity |
spring-boot-starter-web-services |
spring-boot-starter-web |
spring-boot-starter-websocket |
spring-boot-starter-ws |
導入 Part2
spring initializr
spring initializrでSpringBootのスケルトンプロジェクトを生成する。
ウェブアプリケーションの作成を仮定するならば、以下を設定する。
name |
---|
spring-boot-starter-aop |
spring-boot-starter-data-jpa |
spring-boot-starter-logging |
spring-boot-starter-tomcat |
spring-boot-starter-thymeleaf |
spring-boot-starter-web |
spring-boot-starter-test |
スケルトンプロジェクトを作成し、IntelliJに取り込み
Gradleから起動できればOK
導入 Part3
ソースのバージョン管理を行う。
PCにSvn,Gitを導入するか、クラウドサービスを利用する。
Githubがおすすめ。
導入 Part4
CIするならJenkinsでも導入してみる。
Githubへのコミットを検知し、自動でビルド&テストまで実行できれば保守が楽になる。
build.gradleにはそれぞれのタスクを、
Jenkinsのジョブとパイプラインでタスクをつなぎ合わせるイメージである。
実践 Part1
1.HelloWorldをネットで調べてコンソールとhtmlの二つで表示してみる。
2.Controllerとhtmlを自作して、とりあえず遷移してみる。
3.htmlからgetメソッド&postメソッドを使い分け、Controllerに正常遷移できるか確認してみる。
実践 Part2
1.フォームbeanを自作し、htmlからControllerにリクエストする。
2.thymeleafを活用し、Controllerからフォームbeanを受け取り、html上に表示してみる。
3.Controllerクラスの内部処理をServiceクラスに移動する。