terça-feira, 8 de fevereiro de 2011

Banco de dados com NHibernate






Quando se fala em orientação a objetos e desenvolvimento multi-camadas uma das coisas que mais "pegam" é a camada de persistência, quanto pensamos em desenvolver algo que seja portável para diversos bancos de dados diferentes (Ex. Firebird, MS-SQL, Oracle, Etc). 

Existem diversas alternativas para solucionar esse problema, deste você mesmo construir suas classes de persistência, ou utilizar um dos diversos frame-works existentes. 

Um desses frameworks que tem sido usado largamente pela plataforma Java e também .NET é o Hibernate, que na versão .NET torna-se NHibernate.

Então vamos lá aprender um pouco mais sobre o assunto: 


NHibernate é uma das soluções de Mapeamento objeto-relacional (ORM) para a plataforma de desenvolvimento Microsoft .NET, um framework que fornece o mapeamento do modelo relacional para a orientação a objeto.

O NHibernate é livre e de código aberto e é a versão portada do Java para o Microsoft .NET do Hibernate.
Ele lida com plano de persistência para objetos e de um subjacentes de dados relacionais. Dando uma descrição XML de suas entidades e relacionamentos, NHibernate gera automaticamente códigos SQL para carregar e guardar os objectos. Opcionalmente, você pode descrever o seu mapeamento de metadados com atributos em seu código fonte.

Suporta persistência transparente, o seu objeto classes não têm de seguir um modelo de programação restritiva. Classes persistentes não precisam implementar nenhuma interface ou herdar de uma classe especial base. Isto torna possível desenvolver a lógica empresarial utilizando o plano de objetos .NET (CLR) e Orientação a Objetos.

Originalmente sendo uma parte do Hibernate 2.1, o NHibernate API é muito semelhante ao do Hibernate. Todo o conhecimento e documentação existente é, portanto, diretamente aplicável ao NHibernate. 

Neste link você encontra uma lista do Dialetos SQL Suportados Pelo Hibernate:


Fontes :