달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2009. 7. 29. 11:33

Roo Demo 프레임워크2009. 7. 29. 11:33

http://www.jroller.com/desmax/entry/roo

Roo Demo

1. 프로젝트 디렉토리 생성
msmac ~/tutorial/roo] mkdir pizza
msmac ~/tutorial/roo] cd pizza

2. roo 쉘 실행
msmac ~/tutorial/roo/pizza] roo
    ____  ____  ____  
   / __ \/ __ \/ __ \ 
  / /_/ / / / / / / / 
 / _, _/ /_/ / /_/ /  
/_/ |_|\____/\____/    1.0.0.RC1 [rev 198]


Welcome to Spring Roo. For assistance press TAB or type "hint" then hit ENTER.
roo>

3. 프로젝트 생성하기
roo> create project -topLevelPackage com.pizza
...

4. JPA 설치하기
roo> install jpa -provider HIBERNATE -database HYPERSONIC_PERSISTENT 
...

5. 도메인 클래스 생성하기
roo> new persistent class jpa -name ~.domain.Product
...

6. 도메인 클래스에 필드 추가하기
roo> add field string -fieldName name
...

roo> add field number -fieldName price -type java.lang.Double
...

roo> add field boolean -fieldName vegi
...

7. 도메인 클래스에 관계 추가하기
roo> new persistent class jpa -name ~.domain.PizzaOrder
...

roo> add field date jdk -fieldName orderDate -type java.util.Date
...

roo> add field set jpa -element ~.domain.Product -fieldName products
...

8. 컨트롤러와 뷰 추가하기
roo> new controller automatic -name ~.view.ProductController -formBackingObject ~.domain.Product
...

roo> new controller automatic -name ~.view.PizzaOrderController -formBackingObject ~.domain.PizzaOrder
...

9. 실행하기
roo> q
msmac ~/tutorial/roo/pizza] mvn tomcat:run

브라우저 주소창에 http://localhost:8080/pizza를 입력하고 테스트

10. 이클립스에서 프로젝트 불러오기
msmac ~/tutorial/roo/pizza] mvn eclipse:eclipse
eclipse에서 해당 프로젝트 import

Product.java를 열고 @RooToString 라인을 지우고, roo 쉘을 실행하면
msmac ~/tutorial/roo/pizza] roo
    ____  ____  ____  
   / __ \/ __ \/ __ \ 
  / /_/ / / / / / / / 
 / _, _/ /_/ / /_/ /  
/_/ |_|\____/\____/    1.0.0.RC1 [rev 198]


Welcome to Spring Roo. For assistance press TAB or type "hint" then hit ENTER.
Deleted SRC_MAIN_JAVA/com/pizza/domain/Product_Roo_ToString.aj

이처럼 JIT 방식의 code generation이 지원된다.
:
Posted by codetemplate