Anda di halaman 1dari 8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

www.de vm e dia.com .br

[ve rso para im pre sso]

Desenvolvendo aplicaes com NHibernate - Parte I

Um framework que est sendo muito utilizado para persistncia de dados para a plataforma Dot.Net o NHibernate.

Desenvolvendo aplicaes com NHibernate - Parte I


Um framework que est sendo muito utilizado para persistncia de dados para a plataforma Dot.Net o NHibernate. Atravs dele podemos fazer um mapeamento entre a classe do nosso projeto e a tabela de nosso Banco de Dados. A vantagem que no precisaremos codificar nenhum comando SQL para carregar, incluir ou excluir dados do Banco de Dados, mas como desvantagem que para cada tabela temos que gerar um arquivo de Mapeamento, mesmo tendo ferramentas que auxiliam neste trabalho, no deixa de ser algo trabalhoso. Neste artigo iremos preparar o ambiente de desenvolvimento com o download e configurao de ferramentas que nos ajudaro no desenvolvimento da aplicao utilizando este Framework. Primeiramente deveremos instalar o NHibernate pelo link http://sourceforge.net/project/showfiles.php?group_id=73818&package_id=73969. Depois de instalado, o segundo passo criar um projeto do tipo Windows Application, como mostra a Figura 1.

www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652

1/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

Figura 1 Criando um novo projeto do tipo Windows Application Aps ter criado o projeto, iremos adicionar a referncia do NHibernate que acabamos de instalar, incluindo a DLL NHibernate.dll. Para adicionar a referncia basta clicar com o boto direito em cima da pasta References e depois clicar em Add Reference, como mostra a Figura 2.

Figura 2 Adicionando Referncia do NHibernate Bom, com o projeto criado e a referncia informada vamos iniciar a parte da criao da tabela no banco de Dados. Para nosso teste vamos criar uma tabela com a estrutura apresentada na Listagem 1. C R E A T ET A B L EE m p r e s a ( C O D E M P b i g i n tI D E N T I T Y ( 1 , 1 )N O TN U L L , R A Z S O C n v a r c h a r ( 1 5 0 ) N U L L , N O M E F A N n v a r c h a r ( 1 5 0 ) N U L L , E N D E R E C O n c h a r ( 3 0 0 ) N U L L , L O G O T I P O i m a g e N U L L , C O N S T R A I N TP K _ E m p r e s aP R I M A R YK E Y( C O D E M P ) )
www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652 2/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

Listagem 1 Cdigo SQL da tabela Empresa Ao ser criada o Banco de Dados com a tabela acima, vamos iniciar os trabalhos para que conseguamos conectar ao Banco e incluir, excluir e alterar registros nesta tabela. O primeiro passo ser gerar a string de conexo para quando a nossa acplicao for executada ela consiga conectar ao Banco de Dados. Antes iremos adicionar em nosso projeto um arquivo de configurao, nele que fazeremos a primeira configurao com relao ao NHibernate. Para isso ser necessrio adicionar um novo item clicando com boto direito do mouse no Projeto -> Add -> New Item, escolhendo assim a opo Application Configuration File, como mostra a Figura 3.

Figura 3 Adicionando arquivo de configurao Aps ter adicionado o arquivo de configurao, deveremos configur-lo informando servidor, banco de dados e outros itens conforme a Listagem 2. Neste arquivo de configurao informamos o provider do NHibernate que estamos utilizando, a string de conexo para conectarmos ao Banco de Dados. Sendo assim, sempre que executarmos a aplicao o sistema conectar automaticamente ao Banco de Dados. < ? x m lv e r s i o n = " 1 . 0 "e n c o d i n g = " u t f 8 "? > < c o n f i g u r a t i o n > < c o n f i g S e c t i o n s > < s e c t i o n n a m e = " n h i b e r n a t e " t y p e = " S y s t e m . C o n f i g u r a t i o n . N a m e V a l u e S e c t i o n H a n d l e r ,S y s t e m , V e r s i o n = 1 . 0 . 3 3 0 0 . 0 , C u l t u r e = n e u t r a l ,P u b l i c K e y T o k e n = b 7 7 a 5 c 5 6 1 9 3 4 e 0 8 9 "/ > < / c o n f i g S e c t i o n s > < n h i b e r n a t e > < a d d k e y = " h i b e r n a t e . c o n n e c t i o n . p r o v i d e r " v a l u e = " N H i b e r n a t e . C o n n e c t i o n . D r i v e r C o n n e c t i o n P r o v i d e r "
www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652 3/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

/ > < a d d k e y = " h i b e r n a t e . d i a l e c t " v a l u e = " N H i b e r n a t e . D i a l e c t . M s S q l 2 0 0 0 D i a l e c t " / > < a d d k e y = " h i b e r n a t e . c o n n e c t i o n . d r i v e r _ c l a s s " v a l u e = " N H i b e r n a t e . D r i v e r . S q l C l i e n t D r i v e r " / > < a d d k e y = " h i b e r n a t e . c o n n e c t i o n . c o n n e c t i o n _ s t r i n g " v a l u e = " S e r v e r = J H O N \ S Q L E X P R E S S ; D a t a b a s e = A U L A ; U s e rI D = s a ; P a s s w o r d = ' ' " / > < / n h i b e r n a t e > < / c o n f i g u r a t i o n > Listagem 2 Arquivo de Configurao O prximo passo agora gerar os arquivos referente a tabela Empresa, tanto o arquivo CS tanto o arquivo de mapeamento.

Figura 4 Configuraes iniciais no MyGeneration Para isto utilizaremos a ferramenta MyGeneration, que atravs da tabela de um Banco de Dados consegue gerar estes dois arquivos. O link http://www.mygenerationsoftware.com/portal/default.aspx, nos permitir realizar o download do software e dos templates para a gerao dos arquivos de mapeamento, mas no prprio software j possui um template padro.
www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652 4/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

Aps ter realizado a instalao do software, deveremos informar nossa string de conexo ao mesmo para que o mesmo consiga conectar ao nosso Banco de Dados, conforme mostrado na Figura 4. Tambm so definidos qual a linguagem que ser gerado o arquivo CS e qual ser tabela de tipos ser utilizada. Uma vez configurado, as opes se manteram salvas. Aps termos realizado o teste de conexo o mesmo conclui com sucesso podemos gerar os arquivos da nossa tabela. Para isto devemos ir em File -> New -> Template Browser, escolher a opo NHibernate e dar um clique duplo na primeira opo, conforme Figura 5.

Figura 5 Abrir o template para NHibernate Ao abrir este template vamos execut-lo tendo como resultado a seguinte a tela que apresentada na Figura 6. As principais configuraes desta tela a escolha do diretrio de gerao dos arquivos, o Namespace que ser includa a classe referente a tabela, se ser gerada o arquivo XML de mapeamento e quais tabelas sero geradas.

www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652

5/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

Figura 6 Template NHinernate executado Aps corrigido as informaes vamos gerar os aquivos para a tabela Empresa, sendo que os mesmos sero importados para nosso projeto. O arquivo CS ser includo como nova classe em nosso projeto e o arquivo Hbm.Xml ser includo como um item existente, lembrando de setar a propriedade Build Action como Embedded Resource como mostrado na Figura 7. Para todos os arquivos Hbm.Xml sempre que importados para nosso projeto, os mesmos devem ter sua propriedade Build Action como Embedded Resource.

www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652

6/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

Figura 7 Configurando a propriedade Build Action At aqui configuramos nosso ambiente de desenvolvimento pronto para iniciarmos a codificao das telas. Na configurao do nosso ambiente de desenvolvimento ns instalamos Nhibernate o framework a ser utilizado para persistncia de dados. Conhecemos a ferramenta MyGeneration que gera a partir de uma tabela o arquivo CS e o arquivo de mapeamento cujos arquivos sero necessrios para o funcionamento da nossa aplicao. No nosso prximo artigo continuaremos a codificao da tela de Empresa utilizando o NHibernate para manipulao de dados e conhecendo um pouco mais deste framework, ento at l pessoal.

por JHONATAN FERNANDO


Jhonatan Fernando (jhonatanfernando@yahoo.com.br), Bacharel em Cincia da Computao pela Universidade de Itana/MG. Experincia com desenvolvimento de aplicaes para Gesto Empresarial utilizando a IDE Delphi 7.0. Atualmente como Analista de Sistema/Desenvolvedor C# desenvolvendo aplicaes para Pocket PC e WindowsForms utilizando a tecnologia Dot.Net.
www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652 7/8

10/02/13

Verso para impresso: Desenvolvendo aplicaes com NHibernate - Parte I

www.devmedia.com.br/articles/viewcomp.asp?comp=6652

www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=6652

8/8

Anda mungkin juga menyukai