Java で Web アプリケーションを作る際に調べた覚書。
- API 製作に向いてる JAX-RS
- リッチな UI が揃ってる JSF
- DBアクセスは JPA が定番か?(難しいけど…)
- Dropwizard
- Yammer のバックエンドとして作成された
- ビルドしたら jar 1つ
- AP サーバーナシで動く
- Jetty が組み込まれてる
- 確か Play! もそんな感じ
- ORM は Hibarnate
- AP サーバーナシで動く
- Ninja Framework
- 名前がかっこいい
- Play1 の後継
- こいつも standalone モードというのがあって jar 1つで動かすことができる
- war にもできるよ
- GAE や Heroku サポート
- ORM は Hibarnate
Play の影響が大きかったのか、Java で Web 開発という手数が多くて…という印象を覆すことができてるように思う。
- Spring Boot
- Spring で作られたアプリケーションをスタンドアローンビルドしたり
- とりあえず、こいつ入れとけば捗る的ななにか?
- 指定する Maven(gradle) を指定すれば SpringMVC や Spring Data を使用可能
- 慣れれば楽と弊社エースの弁
- Spring で作られたアプリケーションをスタンドアローンビルドしたり
個人的見解を書かせていただきます。m(_ _)m
Spring Boot
特徴
→ バッチ開発(spring-boot-starter-batch)、Web開発(spring-boot-starter-web)、WebSocket開発(spring-boot-startert-websocket) 等
[指定可能なStarter POMs]
http://docs.spring.io/spring-boot/docs/1.1.8.RELEASE/reference/htmlsingle/#using-boot-starter-poms
→ Web開発(spring-boot-starter-web)のStarter POMsに組み込みのアプリケーションサーバーが内蔵されている。(Tomcat, Jetty) [デフォルト:Tomcat]
→ 組み込みのアプリケーションサーバーのバージョンの指定もできる。
→ Javaアプリケーションとして起動すると組み込みのアプリケーションサーバーが起動し、Webアプリケーションとして動作する。
[参考:組み込みのアプリケーションサーバーのバージョン指定方法]
http://docs.spring.io/spring-boot/docs/1.1.8.RELEASE/reference/htmlsingle/#howto-use-tomcat-8
→ IntelliJでGradleを使ってSpring Bootと遊んでみたがいまいちうまく行かなかった・・・。