Last updated by
4 years ago
Page: Quick Start Portuguese, Version:2
English Version
A função irá solicitar o nome do seu projeto e então irá criar a estrutura do projeto como exibido abaixo:
A configuração de uma fonte de dados é simplesmente uma questão de alterar os valores para o banco de dados desejado, além de colocar o arquivo jar do driver no diretório "<..>/lib". As propriedades definidas no nó dataSource são herdadas pelos filhos.A função irá solicitar que você informe o nome da classe de domÃnio. Uma classe de domÃnio é um artefato persistente, e por padrão, todas as suas propriedades são persistidas no banco de dados (Vá para a seção GORM (Grails Object Relational Mapping) para mais informações):
Neste ponto você pode querer criar alguns dados de teste. Uma forma fácil de fazer isso é criando e salvando os objetos de domÃnio na closure "init" da classe bootstrap da aplicação Grails, localizada em "<..>/grails-app/conf/BootStrap.groovy" (Obs.: na versão 0.5.6, e talves em outras, parece que este arquivo foi alterado para ApplicationBootStrap.groovy, com a declaração da classe também alterada para "class ApplicationBootStrap"):
(Observe que você pode criar e salvar os objetos aqui da mesma forma que faria nos controladores ou outras partes da aplicação em Grails; veja Grails Object Relational Mapping (GORM) para maiores informações sobre objetos de domÃnio.)
Certifique-se que você digitou "Livro" com a letra B maiúscula.Nota: Você deverá remover ou comentar o trecho "def index = { } " do arquivo gerado para que o scaffolding funcione.
Alternativamente, você pode utilizar o comando "grails generate-all", o qual irá criar todo o scaffolding ("modelo") para você, e deixará o controlador gerado em paz, ao invés de sobreescrevê-lo com o scaffolding padrão. Isto pode ser valioso no aprendizado.
Isto irá iniciar uma instância de um servidor Jetty rodando na porta 8080. Para iniciar o serviço em uma porta diferente, como por exempro 9090, utilize o comando {grails -Dserver.port=9090 run-app}. Para acessar a lista de livros, abra um navegador e digite:
Ou, sendo a closure "list" a ação padrão para o LivroController, você pode digitar:
{tip:title=Deixe o Grails mais Veloz}
O Grails pode parecer muito lento no modo de desenvolvimento, com páginas levando mais de um segundo para serem carregadas. Se isto se aplica à você, tente aumentar o tamanho máximo de memória heap através da variável de ambiente {JAVA_OPTS}, definindo seu valor para algo assim: '-Xmx512m' - isto irá definir o tamanho máximo de memória heap para 512Mb ao rodar o Grails, o que deve resultar em uma notável melhora no tempo de resposta.
{tip}
InÃcio Rápido
As informações que seguem tornam simples iniciar um projeto Grails. Também está disponÃvel um screencast com os passos para criar uma pequena aplicação.- InÃcio Rápido
- Crie um projeto Grails
- Configure uma Fonte de Dados (Opcional)
- Crie uma Classe de DomÃnio
- Crie um controlador
- Iniciando o Grails
- O que vem depois
Crie um projeto Grails
Uma vez instalado o Grails, você poderá utilizar uma função interna para criar novos projetos:grails create-app
%PROJECT_HOME%
+ grails-app
+ conf ---> local dos artefatos de configuração,
como fontes de dados
+ hibernate ---> opcional; configurações hibernate
+ spring ---> opcional; configurações spring
+ controllers ---> local dos artefatos de controladores
+ domain ---> local das classes de domÃnio
+ i18n ---> local dos pacotes de mensagens i18n
+ services ---> local dos serviços
+ taglib ---> local das tag libraries
+ util ---> local das classes utilitárias
especiais (ex., codecs, etc.)
+ views ---> local das visões
+ layouts ---> local dos layouts
+ lib
+ scripts ---> scripts
+ src
+ groovy ---> opcional; local para arquivos fonte em
Groovy (para tipos outros que não
estão em grails-app/*)
+ java ---> opcional; local para arquivos fontes
em Java
+ test ---> classes de testes geradas
+ web-app
+ WEB-INFConfigure uma Fonte de Dados (Opcional)
A função "create-app", criou um artefato de fonte de dados do Grails para você no diretório "<..>/grails-app/conf", ele é chamado DataSource.groovy e possuà closures para cada um dos ambientes padrão: Development, TestData e Production (respectivamente: Desenvolvimento, Teste de Dados e Produção). Todos os exemplos que seguem funcionam no ambiente _development_. Para maiores informações sobre ambientes, veja configuração.Por padrão, cada fonte de dados é configurada com um banco em memória chamado HSQLDB (ótimo para testes, mas provavelmente não muito útil para ambientes reais), portanto este passo é opcional:dataSource {
pooled = false
driverClassName = "org.hsqldb.jdbcDriver"
username = "sa"
password = ""
}
// configuraçõs especÃficas do ambiente
environments {
development {
dataSource {
dbCreate = "create-drop" // one of 'create', 'create-drop','update'
url = "jdbc:hsqldb:mem:devDB"
}
}
test {
dataSource {
dbCreate = "update"
url = "jdbc:hsqldb:mem:testDb"
}
}
production {
dataSource {
dbCreate = "update"
url = "jdbc:hsqldb:file:prodDb;shutdown=true"
}
}
}Criando uma Classe de DomÃnio
Tenha certeza que você está no diretório raiz do seu projeto (por exemplo "meu-projeto") digitandocd meu-projetograils create-domain-class
class Livro {
String titulo
String autor
}class BootStrap { def init = { servletContext ->
// Cria alguns dados de teste
new Livro(autor:"Stephen King",titulo:"The Shining").save()
new Livro(autor:"James Patterson",titulo:"Along Came a Spider")
.save()
}
def destroy = {
}
}Crie um controlador
Os controladores são centrais para as aplicações em Grails, eles tratam as requisições web e URLs do mapa de requisição para uma classe de controlador em uma closure junto à classe.Execute o comando "grails create-controller" e digite o nome do controlador. Em nosso exemplo digitamos "Livro", o que gerou um controlador chamado {grails-app/controllers/LivroController.groovy}. Abra este controlador e altere-o como mostrado a seguir para que seja utilizado o Scaffolding dinâmico, o qual irá gerar dinamicamento sua aplicação em tempo de execução:class LivroController {
def scaffold = Livro
}Iniciando o Grails
Para iniciar sua aplicação com Grails, execute o seguinte comando:grails run-app
http://localhost:8080/meu-projeto/livro/list
http://localhost:8080/meu-projeto/livro
O que vem depois
- Veja Armazenando Projetos no SVN para saber como armazenar sua nova aplicação Grails dentro do controle de fontes.
- Configure sua aplicação Grails em sua IDE
- Navegue nos variados plugins Grails e instale algum como o webtest para criar testes funcionais através do canoo webtest.