Agora que criamos o nosso diagrama de classe no passo anterior, vamos aprender como gerar a camada de persistência e gerenciá-la. 

A Camada de persistência é a parte da aplicação responsável pela comunicação com o banco de dados. Permite o acesso e a atualização em diferentes bancos de dados.

Visão Geral

Ao gerar a camada de persistência, serão criadas a camada DAO (Data Access Object - Objeto de acesso a dados) e a camada de entidade (entity) que estará configurada para montar o banco de dados selecionado no diagrama.

Na Figura 1.1 vemos os passos necessários para selecionar as entidades e gerar essas camadas.



Figura 1.1 - Gerando a Camada de Persistência das classes Livro e Reserva


  1. Gerar camada de persistência: abre a janela com a funcionalidade;
  2. Classes: mostra as classes selecionadas para a geração;
  3. "…": abre a janela de seleção das classes;
  4. Visão: seleciona a visão;
  5. busca: pesquisa por classes pertencentes a visão selecionada;
  6. Lista de seleção de classes: lista das classes filtradas pelos campos visão e busca. Habilite ou desabilite, na caixa de seleção (azul), as classes que serão geradas;
  7. Selecionar: botão de confirmação das classes selecionadas
  8. Namespace: o nome padrão do namespace é app, caso altere, as camadas dao e entity serão criadas em um novo endereço;
  9. Tipo de geração: define se irá criar / adicionar tabelas ou "dropar" as tabelas do bando de dados
    • Criar ou Atualizar Tabelas: use essa opção para gerar as tabelas do banco de dados pela primeira vez ou caso tenha adicionado novas classes e não fez alterações nas que já existiam. Essa opção não apaga os dados do banco de dados;
    • Apagar e Recriar Tabelas: apaga todas as tabelas do banco de dados, incluindo os dados, e recria tudo novamente com as alterações feitas no diagrama de dados;
    • Utilizar Tabelas Existentes: não realiza alterações no banco de dados, apenas cria as camadas dao e entity;
  10. Gerar: botão que gera as camadas dao, entity e das classes selecionadas.

 

As alterações referente ao banco de dados só serão realizadas apenas quando a aplicação for executada.

 


Passos

Abra o diagrama de dados (veja onde abrir no passo anterior) e clique no botão Gerar camada de persistência (item 1 da figura 1.1), e siga os passos da figura 1.1, selecionando somente as classes Livro e Reserva. Para essa aplicação não será necessário realizar qualquer alteração, apenas clique no botão Gerar.

Sempre que uma nova classe é inserida ou o tipo de geração de persistência é modificado, a janela de Conflitos irá aparecer (Figura 2.1). Ela informa os arquivos que serão alterados após essa ação. Clique no botão Aplicar alterações aos itens marcados.

Figura 2.1 - Janela de conflitos


 O arquivo persistence.xml armazena os dados de todas as classes geradas no diagrama de Classes.

 

Após isso, uma janela de informação aparecerá informando que tudo ocorreu com sucesso (Figura 2.2).

Figura 2.2 - Camada Gerada

Criando as tabelas do banco de dados

Como informado anteriormente, as tabelas do banco de dados só serão criadas ou alteradas no momento da execução da aplicação, então vamos rodar nossa aplicação para gerar nosso banco de dados.

Segundo os passos da Figura 2.3: clique no botão Rodar (1)  para executar o sistema e espere um tempo até que o servidor Tomcat seja iniciado, como estamos executando pela primeira vez. 

Figura 2.3 - Executar aplicação

 

Após criar e rodar um projeto no Cronapp, a aplicação já pode ser executada em Abrir Navegador (3), escolha a opção Navegador [webapp] e você poderá logar com o usuário administrador que já vem cadastrado (login e senha: admin).

Nesse sistema pré configurado possui uma página que lista e cadastra usuário e o associa a um grupo de acesso.

Se tiver curiosidade, acesse o sistema e veja o que já é configurado, caso contrário, clique em parar (2).

O que exatamente foi gerado?

Ao abrirmos a pasta dos arquivos do lado servidor (Figura 2.4) veremos que todas as classes criadas no diagrama possuem uma versão na pasta entity e na pasta dao, isso ocorreu ao gerar a camada de persistência.


Figura 2.4 - Camadas dao e entity.

 

No momento que rodamos o projeto, o banco de dados H2 foi gerado e configurado. Podemos visualizá-lo através do sistema de gerenciamento de dados do banco H2. Pare a aplicação (item 2 da figura 2.3) e siga os passos da Figura 2.5: clique no botão Banco de dados (1) para abrir a janela que exibe os bancos de dados cadastrados e depois no ícone Manipular dados (2), abrindo a janela do gerenciador de SQL.


Figura 2.5 - Acesso ao gerenciador de Banco de Dados

 

Na janela do gerenciador do SQL veremos a lista das tabelas criadas, clique na tabela USER (1) para ele inserir automaticamente uma consulta SQL na caixa de texto (2) e depois clique no botão Run para realizar a consulta. (Figura 2.6)

Como não inserimos nenhum dado novo, só aparecerá os dados do usuário Administrador, que é inserido automaticamente ao criar o banco de dados.

Figura 2.6 - Gerenciador de Banco de Dados