domingo, 8 de março de 2015

Exemplo de utilização do Java Persistence API - 1

Neste artigo vamos criar um projeto Java Class Library, usando o NetBeans, para acesso a uma BD ORACLE, usando o Java Persistence API (JPA).
Para criar a BD ORACLE pode seguir-se, por exemplo, este artigo.

No NetBeans, criamos um novo projeto de tipo "Java Class Library":


 Atribuimos um nome ao projeto:


O nosso novo projeto aparecerá como se segue, na janela de visualização de projetos do NetBeans:


Depois, queremos criar as classes Entidade a partir das tabelas já criadas na nossa base de dados ORACLE. Acedemos a New File --> Other e selecionamos, na categoria Persistence, o tipo de ficheiro "Entity Classes from Database":




Na dropdown list identificada como Database Connection, selecionamos, ou criamos, a ligação à nossa BD ORACLE:



E, selecionamos as tabelas que pretendemos mapear para classes em Java,



e o nome do package onde serão colocadas as classes a ser criadas:



O nosso projeto aparece agora como:



É ainda necessário adicionar às bibliotecas (libraries) do nosso projeto, as bibliotecas jdbc para utilização com o ORACLE (estas bibliotecas vêm com o ORACLE e estão numa pasta jdbc algures na instalação ORACLE):




Para além das classes Entidade, foi ainda criado um ficheiro persistence.xml com a informação de ligação à BD, e outra informação para o JPA:


Vamos agora criar uma classe de teste (main) para testar as classes geradas:


Na nossa classe de teste, começamos por criar duas variáveis static, uma com o nome da unidade de persistência, definido no ficheiro persistence.xml, e outra, factory, de tipo EntityManagerFactory, a qual será usada na main para criar o EntityManager:

public class TestClass {
     private static final String PERSISTENCE_UNIT_NAME = "exJPAusagePU";
     private static EntityManagerFactory factory;

     ...




Testado, e pronto para avançarmos nos nossos projetos!
Este artigo criou uma camada de acesso a dados (DAL, Data Access Layer) usando o Java Persistence API (JPA).
Nos próximos artigos procuraremos resolver o problema da gestão de atribuição de chaves nas tabelas da BD, e criar um projeto Java Class Library com uma camada acima da que criámos aqui, a qual pretenderá fornecer funções/serviços de lógica do negócio (BLL, Business Logic Layer) para uma camada de User Interface.


Sem comentários:

Enviar um comentário