Java: Hibernate, JSF, AJAX



1. Hibernet

Segundo Rodrigo R. Fragoso Hibernet é: "É uma ferramenta, framework, de mapeamento objeto/relacional para java. Transforma os dados da estrutura lógica de um banco de dados em objetos definidos pelo desenvolvedor".
Atualmente se encontra na versa 3.x. A idéia principal do Hibernet é facilitar a maneira de acesso a banco de dados e SQL (Structured Query Language, ou Linguagem de Consulta Estruturada), pois o mesmo tem sua própria linguagem a HQL (Hibernate Query Language).
Essa linguagem e um dialeto SQL para o Hibernate. Ela é uma poderosa linguagem de consulta que se parece muito com a SQL, mas a HQL é totalmente orientada a objeto, incluindo os paradigmas de herança, polimorfismo e encapsulamento.
No Hibernate, você pode escolher tanto usar a SQL quanto a HQL. Escolhendo a HQL, você poderá executar os pedidos SQL sobre as classes de persistência do Java ao invés de tabelas no banco de dados, aumentando, assim, a distância entre o desenvolvimento da regras de negócio e o banco de dados. No entanto nem tudo perfeito, caso você preciso criar aplicações onde necessite usar com um aprofundamento maior os processos de triggers, stored procedures não vai se beneficiar. A solução é mais aplicada para soluções em o projeto seja realizado em camadas e onde a camada de negócio fique na própria aplicação Java. E só para constar o Hibernet foi criado por desenvolvedores java que foi liderado por Gavin King


1.2 Características Atuais

Dentre suas principais características é transforma as classes de Java para tabelas de dados (SQL). Com isso o desenvolvido não precisa mais fazer a conversão manualmente, mantendo o programa portável e ao mesmo tempo liberando o desenvolvedor para fica mais tempo na parte lógica da aplicação.
Além da característica acima o Hibernet é "código aberto" o que facilita o seu crescimento e o aumento de novas funcionalidade em pouco tempo; no caso das transações de acesso o Hibernet deixa essa tarefa mais para outro elemento na infraestrutura do programa; é nativo para java mais existe a versão para .Net (NHibernet); Map classes com JDK 5.0, entre outras.

1.3 Novas Características (Hibernet 4.0)

Em sua versão 4.0 o hibernet foca nos seguintes objetivos: configurações mais simples; mais flexibilidades de mapeamento; otimizações por meio de melhorias na inicialização que atualmente é lento e as ferramentas de hibernet para onde todas as dll sejam geradas automaticamente.


2. JavaServer Faces

Uma das grandes dificuldades ainda no mundo do desenvolvimento para aplicações Web é ter uma ferramenta de programação em que o desenvolvedor não perca tanto tempo com a parte de "design", ou seja, procura-se a todo momento ferramentas de desenvolvimento similares ao Delphi ou Visual Basic.
Assim. o JavaServer Faces é um framework para o desenvolvimento de aplicações Web, orientada a eventos, onde o usuário pode arrastar os objetos pela tela e altera suas propriedades. Com isso, sobra muito mais tempo para se dedicar exclusivamente a parte lógica da aplicação.
Os módulos que compõem o JSF são: componentes, eventos, valiação e conversões, navegabilidade, backbeans. Vamos falar um pouco dos dois principais módulos: componentes e eventos.

Componentes

Similiar ao Delphi acompanhado do framework contém vários componentes que podem ser arrastados para a tela.

Eventos

Um vez que temos a disposição componentes, logo o JSF possibilita altera as propriedades dos objetos via comando. A idéia é a mesma que a ferramenta do Delphi: orientado a eventos.


2.1 Vantagens e Versões

As vantagens principais em usar o JSF é que o framework, como dito, devido a ser um ambiente orientado a eventos é o seu fácil manuseio, suporta MVC para Web, componentes extensíveis, boa demanda de mercado e conseqüentemente dos desenvolvedores, código aberto, etc.
Em se tratando de versões sua primeiro lançamento era a versão 1.1, no presente momento o JSF se encontra na versão 1.2.
3. Ajax

Uma das grandes preocupações dos desenvolvedores de aplicações Web é a questão da usabilidade. Como se sabe, a regra aqui é no máximo "três cliques" e que o usuário tenha a sua disposição um ambiente onde a procura da informação não se torne uma aventura em busca da "mina de ouro".A fim de atende essa demanda é que surgi o Ajax.
O termo Ajax que dizer: Asynchronous JavaScript and XML (JavaScript e XML Assíncronos) - é uma técnica usada para criar aplicações web mais interativas, usando uma combinação de tecnologias:
ü (X)HTML e CSS (para a boa apresentação dos dados, ou pelo menos organizada)
ü DOM + JavaScript (separação correta dos dados)
ü XML (intercâmbio de informações)
ü XMLHttpRequest (solicitações assíncronas de informações CLIENTE SERVIDOR sem necessidade de dar refresh na página)
ü Uma linguagem do lado de servidor (PHP, ASP.NET, etc) para enviar os dados (no caso o XML).

3.1 Funcionamento

O que seria a Web sem o Ajax? Para ser ter uma idéia vamos verificar com funciona as aplicações web sem o Ajax. Nas páginas tradicionais acontece que quando o usuário clique em algum botão ?gerando um evento ? toda a página é atualizada. Assim, imaginemos um preenchimento de um formulário onde o campo da cidade atualize de acordo com o estado escolhido pelo usuário. Bom, com se sabe com as tecnologias tradicionais um "refresh" seria dado em toda a página e as informações preenchidas em outros campos pelo usuário seria apagadas. Ai é que entra o Ajax.
Com o Ajax as atualização são feitas em tempo real para o usuário, ou seja o usuário não tenho o risco de perda suas informações temporárias, pois não é dado um "refresh" simplesmente por meio de seus mecanismo o Ajax faz a requisição e a solicitação é atendida online.

4. Conclusão

As necessidades, os negócios mudam com muita flexibilidade no mundo da Web. Para isso, é preciso e necessário o uso de ferramentas, framework, que possibilitam uma melhor facilidades para os desenvolvedores e ao mesmo tempo fornecer um ambiente de fácil manuseio para os usuários.
Assim, os framework Hibernet e JSF possibilitam uma maior liberdade para os desenvolvedores e no caso especificamente do JSF uma redução de tempo na confecção de projetos, uma vez que as empresas solicitam projetos, sistemas, em um tempo cada vez menor.
E no caso do Ajax entende-se que o requisito de usabilidade ou de outros requisitos da Web só pode ser atendido algumas vezes se integrarmos boas tecnologias para um mesmo fim, que o caso do Ajax.
5 Referências


WIKIPÉDIA, Hibernate, http://pt.wikipedia.org/wiki/Hibernate. Acessado em 03 de Abril de 2009.

WIKIPÉDIA, Ajax, http://pt.wikipedia.org/wiki/Ajax. Acessado em 03 de Abril de 2009.

JAVAFREE, Persistência Hibernate. http://javafree.uol.com.br/wiki/Hibernate. Acessado em 03 de Abril de 2009.

DICAS-1, http://www.dicas-l.com.br/dicas-l/20080103.php. Acessado em 03 de Abril de 2009.

JAVAFREE, JSF. http://javafree.uol.com.br/wiki/JSF . Acessado em 04 de Abril de 2009.



Autor: Reginaldo Reis De Santana


Artigos Relacionados


Componentes Visuais De Especificação Em Jsf

Ajax Em Asp.net: Chamando Funções Do Web Service Via Javascript

Arquitetura Otimizada Para Desenvolvimento Web Utilizando Novas Tecnologias

Cakephp E Zend Framework: Frameworks Para Desenvolvimento Php

Linguagem De Acesso A Banco De Dados Relacional:

Junit, Um Framework De Testes (passo-a-passo Pelo Ide Netbeans)

Criação De Bando De Dados Msql No Cpanel