Download Roo: link
Passos usados para criação desta aplicação:
1- Criando a pasta do projeto:
$ mkdir NameApplication
$ cd NameApplication
2- Acessando o gerenciador do Spring Roo:
$ roo
3- Download dos add-ons do Spring Roo:
roo> download accept terms of use
4- Criação do projeto:
roo> project --topLevelPackage com.spring.exampleRoo
5- Configuração do banco de dados:
roo> jpa setup --provider HIBERNATE --database MYSQL
6- Configuração das entidades:
roo> entity jpa --class ~.domain.Base --activeRecord false --testAutomatically
roo> field string --fieldName name --sizeMin 2 --notNull
roo> entity jpa --class ~.domain.Topping --activeRecord false --testAutomatically
roo> field string --fieldName name --sizeMin 2 --notNull
roo> entity jpa --class ~.domain.Pizza --activeRecord false --testAutomatically
roo> field string --fieldName name --notNull --sizeMin 2
roo> field number --fieldName price --type java.math.BigDecimal
roo> field set --fieldName toppings --type ~.domain.Topping
roo> field reference --fieldName base --type ~.domain.Base
7- Configuração dos DAOs:
roo> repository jpa --interface ~.repository.ToppingRepository --entity ~.domain.Topping
roo> repository jpa --interface ~.repository.BaseRepository --entity ~.domain.Base
8- Criação dos Serviços:
roo> service --interface ~.service.ToppingService --entity ~.domain.Topping
roo> service --interface ~.service.BaseService --entity ~.domain.Base
9- Criação dos serviços JSON:
roo> json all --deepSerialize
roo> web mvc json setup
roo> web mvc json all
10- Criação da aplicação web:
roo> web mvc setup
roo> web mvc all --package ~.web
11- Sair do agente de configuração do Spring Roo:
roo> exit
12- Configuração do arquivo de configuração da base de dados:
Será preciso criar a base de dados manualmente e disponibilizar os dados de login, senha e nome da base ao arquivo database.properties localizado em nomeProjeto/src/main/resources/META-INF/spring.
Exemplo: Se o sgbd escolhido na opção 5 foi o mysql:
database.driverClassName=com.mysql.jdbc.Driver
database.url=jdbc\:mysql\://localhost\:3306/NameOfDataBase
database.username=root
database.password=s3cr3t
13- Execução da aplicação web:
$ mvn package jetty:run
14- Para acessar a aplicação digite no browser:
http://localhost:8080/NameApplication/