Your SlideShare is downloading. ×
Spring Rooで作るGWTアプリケーション
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Spring Rooで作るGWTアプリケーション

2,303

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,303
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Spring Rooで作るGWT アプリケーション @making 2011/11/13
  • 2. Spring Rooとは SpringベースのJavaアプリをコマンドラインでさくさ く作るためのRADツール http://www.springsource.org/spring-roo  安定版は1.1.5.RELEASEが最新  開発版は1.2.0.M1が最新  今回の説明は1.2系で! コマンドを叩くとJavaソースコード、XML設定ファイ ル、Maven依存関係の追加などを行ってくれる。 Scaffoldも
  • 3. 入門記事 この辺でGetting Started http://www.ibm.com/developerworks/jp/opensource/libr ary/os-springroo1/index.html http://www.atmarkit.co.jp/fjava/index/index_springroo.ht ml
  • 4. Rooアプリの構成 Web層 サービス層 永続化層 データベース • Spring MVC • JPA • MySQL • GWT • Hibernate • PostgreSQL • Vaadin(addon) • EclipseLink • Oracle • Flex (addon) • TopLink • H2 • DataNucleus • HyperSonic • JMS • GAE1.2からサービス層、レポジトリ層が追 • MongoDB加
  • 5. 1.2からのアプリ層
  • 6. 公式チュートリアルアプリhttp://static.springsource.org/spring-roo/reference/html/beginning.html
  • 7. Spring Rooプロジェクト作成$ mkdir pizza$ cd pizza$ roo.sh# プロジェクト作成roo> project --topLevelPackage com.example.pizza# 永続化層(JPA)の定義roo> jpa setup --provider HIBERNATE --databaseHYPERSONIC_IN_MEMORY
  • 8. エンティティ層の定義# エンティティ作成roo> entity --class ~.domain.Topping –testAutomaticallyroo> field string --fieldName name --notNull --sizeMin 2roo> entity --class ~.domain.Base –testAutomaticallyroo> field string --fieldName name --notNull --sizeMin 2roo> entity --class ~.domain.Pizza –testAutomaticallyroo> field string --fieldName name --notNull --sizeMin 2roo> field number --fieldName price --type java.lang.Float
  • 9. 一対多の定義roo> field set --fieldName toppings --type ~.domain.Topping
  • 10. 一対一の定義roo> field reference --fieldName base --type ~.domain.Base
  • 11. もう一個roo> entity --class ~.domain.PizzaOrder --testAutomaticallyroo> field string --fieldName name --notNull --sizeMin 2roo> field string --fieldName address --sizeMax 30roo> field number --fieldName total --type java.lang.Floatroo> field date --fieldName deliveryDate --type java.util.Dateroo> field set --fieldName pizzas --type ~.domain.Pizza
  • 12. ログproject --topLevelPackage com.example.pizzajpa setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORYentity --class ~.domain.Topping --testAutomaticallyfield string --fieldName name --notNull --sizeMin 2entity --class ~.domain.Base --testAutomaticallyfield string --fieldName name --notNull --sizeMin 2entity --class ~.domain.Pizza --testAutomaticallyfield string --fieldName name --notNull --sizeMin 2field number --fieldName price --type java.lang.Floatfield set --fieldName toppings --type ~.domain.Toppingfield reference --fieldName base --type ~.domain.Baseentity --class ~.domain.PizzaOrder --testAutomaticallyfield string --fieldName name --notNull --sizeMin 2field string --fieldName address --sizeMax 30field number --fieldName total --type java.lang.Floatfield date --fieldName deliveryDate --type java.util.Datefield set --fieldName pizzas --type ~.domain.Pizza
  • 13. ログの読み込み$ roo.sh script log.roo
  • 14. Web層の定義  通常(Spring MVCアプリ)は roo> web mvc setup roo> web mvc all --package ~.web  GWTの場合roo> web gwt setuproo> web gwt all --proxyPackage ~.client.proxy --requestPackage ~.client.request ScaffoldなCRUDアプリが自動生成される
  • 15. GWTアプリ起動$ mvn gwt:run
  • 16. [補足]Spring MVCの場合$ mvn jetty:run
  • 17. ここから先は 未調査!  どうやって画面を使いするの? 次回に続く?
  • 18. 参考情報 http://spring-roo- repository.springsource.org/Getting_Started_with_Roo. pdf オライリー本のPDFがダウンロードできます。  オライリーで買うと$14.99。。どういうことだってばよ
  • 19. おわり Spring RooでCRUDアプリを簡単にGWTでつくれまし た
  • 20. 付録  Spring RooのGWTコマンドweb gwt all - すべてのエンティティをプロジェクトに配置して GWT リクエストとプロキシを生成し,処理の基盤を構成するweb gwt gae update - GWT プロジェクトを更新して,GAE サポートを追加するweb gwt proxy all - すべてのエンティティをプロジェクトに配置して GWT プロキシを生成するweb gwt proxy request all - すべてのエンティティをプロジェクトに配置して GWT リクエストとプロキシを生成するweb gwt proxy request type - 指定された型をベースとするプロキシとリクエストを生成するweb gwt proxy type - 指定された型をベースとする GWT プロキシを生成するweb gwt request all - すべてのエンティティをプロジェクトに配置して GWT リクエストを生成するweb gwt request type - 指定された型をベースとする GWT プロキシを生成するweb gwt scaffold - GWT リクエストとプロキシ,および指定された基盤を生成するhttp://www.infoq.com/jp/news/2011/10/spring-roo-1.2-m1-asl-jpa-mongo より

×