Olá desenvolvedores, neste tutorial iremos trabalhar com o persistence.xml, o arquivo de configuração de persistência de dados, é a partir dele que configuraremos o gerenciador de banco de dados PostgreSQL. Assim possibilitamos o uso do JPA – Java Persistence API, em nosso projeto.

O arquivo persistence.xml deve ficar dentro da pasta META-INF do classpath, que por sua vez está dentro do pacote do código fonte, o src/main/java. É preciso estar exatamente neste caminho para o que o Hibernate consiga encontrar, ler o arquivo e realizar a conexão com o banco de dados.

Entenda que persistência é o mesmo que armazenamento, assim, persistência de dados compreende o armazenamento de dados. Ou ainda, quando falamos de dados persistidos, estamos falando dos dados que sobreviveram ao estado que os criou.

CRIANDO O ARQUIVO DE PERSISTÊNCIA

Mas se o arquivo persistence.xml não tiver sido gerado de forma automática quando o projeto foi criado, é possível cria-lo manualmente. Clique com o botão direito do mouse sobre a pasta do projeto >> Properties. No menu lateral da tela de propriedades clique em “Project Facets” e dê um “checked” na checkbox do JPA >> OK.

Agora é só clicar sobre o arquivo para abri-lo, mas observe que ele pode abrir, por exemplo, na aba “General”, no entanto, trabalharemos na workspace ‘Source’, então, clique sobre ela.

CONFIGURANDO O ARQUIVO PERSISTÊNCE.XML

Observe que dentro do arquivo “persistence.xml” temos o cabeçalho de declarações necessárias para o seu correto funcionamento, e o par de tags padrão com o nome do projeto, <persistence-unit></persistence-unit>.

Desse modo é dentro do respectivo par de tags que colocaremos todas as configurações, ou melhor, tags de configuração necessárias para a conexão com a base de dados.

A primeira tag é a “provider” que compreende um provedor de banco de dados. Ela fornece um EntityManager para a unidade de persistência. Isto é, o “provider” é uma classe que nos permite trabalhar com todas as operações de banco de dados.

<provider>org.hibernate.ejb.HibernatePersistence</provider>

O próximo passo é a declaração da classe criada dentro do par de tags “class”, a declaração consiste em informar o caminho da classe que inclui o seu pacote. Se em seu projeto existir mais de uma classe, serão todas sucessivamente declaradas.

<class>br.com.entidades.Pessoa</class>

DEFININDO AS PROPRIEDADES DE CONFIGURAÇÃO

A próxima etapa de configuração refere-se a configuração das propriedades, são elas que proverão de fato a conexão/acesso ao banco de dados. As propriedades de configuração serão declaradas dentro do par do par de tags “properties” e compreendem o driver de conexão, a url do banco de dados, login e senha, entre outras informações.

Assim, a primeira propriedade a ser definida é a url do banco de dados. Deveremos informar como valor, o local da base de dados, a porta padrão e o nome do banco de dados.

<property name=”javax.érsistence.jdbc.url” value=”jdbc.postgresql://localhost:5432/meuprimeiroprojetojsf” />

E agora, respectivamente informaremos o nome de usuário e a senha para a conexão com o banco de dados.

<property=”javax.persistence.jdbc.user” value="postgres” />
<property="javax.persistence.jdbc.password" value="admin" />

Uma propriedade bastante importante a ser declarada é o driver, que é o responsável por fazer a ligação do JPA e do Hibernate com a base de dados criada.

<property name=”javax.persistence.jdbc.driver” value=”org.postgresql.Driver” />

Para que o Hibernate possa manipular a parte de persistência de dados e do Mapeamento objeto-relacional (ORM) precisamos informar para ele qual é o dialeto. Em outros termos qual é a linguagem ele vai usar para conversar com o banco de dados.

<property name=”hibernate.dialect” value=”org.hibernate.dialect.PostgreSQLDialect” />

As propriedades de apresentação, embora não essenciais são importantes para que a apresentação de dados no console seja amigável e formatada.

<property name=”hibernate.show.sql” value=”true” />
<property name="hibernate.format.sql" value="true" />

CRIANDO O BANCO DE DADOS

Embora já tenhamos definido no arquivo de configuração as informações de acesso ao banco de dados, nós ainda não temos a base de dados gerada. É o que iremos fazer agora.

Assim, abra o gerenciador de banco de dados PgAdmin, ou outro que esteja mais familiarizado. Selecione o PostgreSQL9.2(localhost:5432) >> Databases >> botão direito >> New Database…

Na tela New Database, insira na aba “Properties” o nome do banco, em Owner escolha como usuário “postgres” e clique em OK.

EM POUCAS PALAVRAS

E talvez você esteja se perguntando, de onde vem os nomes e os valores atribuídos, como saber o que colocar em cada tag e em cada propriedade. A resposta é a documentação, a melhor amiga do programador. Aprenda e adquira o hábito de consultar a documentação, e você se tornará um programador cada vez mais independente.