YZAAC GONÇALVES DA SILVA

Tamanho: px
Começar a partir da página:

Download "YZAAC GONÇALVES DA SILVA"

Transcrição

1 YZAAC GONÇALVES DA SILVA DESENVOLVIMENTO DE UM GERENCIADOR DE NOTÍCIAS UTILIZANDO AS FERRAMENTAS NHIBERNATE E GENTLE.NET NO MAPEAMENTO DE OBJETOS PARA BANCO DE DADOS RELACIONAL Palmas 2006

2 ii YZAAC GONÇALVES DA SILVA DESENVOLVIMENTO DE UM GERENCIADOR DE NOTÍCIAS UTILIZANDO AS FERRAMENTAS NHIBERNATE E GENTLE.NET NO MAPEAMENTO DE OBJETOS PARA BANCO DE DADOS RELACIONAL Monografia apresentada como requisitos parciais das disciplinas de Trabalho de Conclusão de Curso em Sistemas de Informação I (TCC I) e Trabalho de Conclusão de Curso em Sistemas de Informação II (TCC II) do curso de Sistemas de Informação, orientado pelo Profº. MSc. Fernando Luiz de Oliveira. Palmas 2006

3 iii YZAAC GONÇALVES DA SILVA DESENVOLVIMENTO DE UM GERENCIADOR DE NOTÍCIAS UTILIZANDO AS FERRAMENTAS NHIBERNATE E GENTLE.NET NO MAPEAMENTO DE OBJETOS PARA BANCO DE DADOS RELACIONAL Monografia apresentada como requisitos parciais das disciplinas de Trabalho de Conclusão de Curso em Sistemas de Informação I (TCC I) e Trabalho de Conclusão de Curso em Sistemas de Informação II (TCC II) do curso de Sistemas de Informação, orientado pelo Profº. MSc. Fernando Luiz de Oliveira. Aprovada em / / BANCA EXAMINADORA Profº. M.Sc. Fernando Luiz de Oliveira - Orientador Centro Universitário Luterano de Palmas Profª. Cristina D'Ornellas Filipakis Souza Centro Universitário Luterano de Palmas Profº. M.Sc. Parcilene Fernandes de Brito Centro Universitário Luterano de Palmas Palmas 2006

4 iv AGRADECIMENTOS Agradeço primeiramente a Deus por ter me colocado em uma família linda cujos meus pais, irmãs, sobrinho, tios entre outros parentes, me apóiam e apoiaram contribuindo assim, para uma boa formação escolar e universitária. Em segundo lugar o meu tio Edivaldo Gonçalves da Silva, que é o principal responsável por eu estar nessa faculdade, cujos recursos financeiros me foram dados por ele. Em terceiro lugar, a todos que me ajudaram e ajudam no dia-a-dia me dando conselhos primorosos, me mostrando o caminho certo a seguir, em especial meu orientador Fernando Luiz de Oliveira pela paciência em me ajudar nesse e em outros trabalhos, disciplinas, entre outras ajudas. Outro agradecimento especial a todos que não citei nomes, mas, que contribuíram e contribuem muito no meu dia-a-dia para um crescimento pessoal e profissional.

5 v RESUMO Dentro do contexto de desenvolvimento de sistemas, o grande problema enfrentado pelos desenvolvedores refere-se a questão de modelar e implementar seguindo o paradigma orientado a objetos e ter que trabalhar com um banco de dados relacional na camada de persistência. Apesar de já existirem Sistemas de Gerenciamento de Banco de Dados (SGBDs) Orientados a Objetos, quer seja por questões culturais, quer seja por questões técnicas (performance, por exemplo), estes SGBDs ainda são pouco utilizados dentro do processo de desenvolvimento de software. Por isto, uma alternativa para contornar este problema refere-se à utilização de ferramentas que façam o trabalho de converter os objetos provenientes da lógica de negócio para o banco de dados relacional, tema este abordado neste trabalho. Palavras-chave: Banco de Dados, Mapeamento de Objetos.

6 vi SUMÁRIO 1 INTRODUÇÃO REVISÃO DE LITERATURA Banco de Dados Relacional Hibernate Query Language (HQL) Persistência de Dados Persistência Tradicional Persistência Prevalência Mapeamento Objeto/Relacional Formas de Mapeamento Etapas para fazer o O/RM Ferramentas para Mapeamento Objeto/Relacional NextGeneration CodeCharge MyGeneration MATERIAIS E MÉTODOS Local e Período Materiais Fontes Bibliográficas Hardwares Softwares Metodologia Visual Studio Microsoft SQL Server

7 vii NHibernate Localizando e configurando o NHibernate Utilizando o NHibernate para manipular o O/RM Gentle.Net Localizando e configurando o Gentle.Net Utilizando o Gentle.Net para manipular o O/RM MyGeneration Localizando e instalando o MyGeneration Utilizando o MyGeneration para fazer o Mapeamento de Objetos 49 4 RESULTADOS E DISCUSSÕES Utilização do MyGeneration no O/RM Gerenciador de Notícias Diagrama de banco de dados do gerenciador de notícias Web config do Gerenciador de Notícias Áreas de gerenciamento da aplicação Área de Notícias Análise de Performance Comparação entre NHibernate e Gentle.Net Análise de Performance entre NHibernate e Gentle.NET CONSIDERAÇÕES FINAIS REFERÊNCIAS BIBLIOGRÁFICAS... 75

8 viii LISTA DE TABELAS Tabela 1: Cronograma de atividades desenvolvidas Tabela 2: Comparativo das características entre os frameworks Tabela 3: Resultado do comparativo de performance entre o Gentle.NET e o NHibernate... 70

9 ix LISTA DE FIGURAS Figura 1: Exemplo de uma consulta utilizando HQL no lugar de SQL Figura 2: Exemplo de uma consulta HQL com restrição Figura 3: Exemplo de uma consulta utilizando SQL Figura 4: Classe utilizada para manipular ações no banco de dados Figura 5: Classe que abre e fecha a conexão com o banco de dados Figura 6: Classe Pessoa Serializada Figura 7: Conexão entre os objetos persistentes e a biblioteca de prevalência. Exemplo modificado de (SANTOS, MACEDO, CITRANGULO & VISCONTI, 2003) Figura 8: Método de inserção utilizando prevalência Figura 9: Método de Alteração utilizando prevalência Figura 10: Método de Exclusão utilizando prevalência Figura 11: Método que realiza a consulta de pessoa utilizando prevalência Figura 12: Mapeamento feito da classe Noticia para a tabela TbNoticia Figura 13: Mapeamento feito da tabela TbNoticia para a classe Noticia Figura 14: Mapeamento de uma tabela TbNoticia para uma classe Noticia Figura 15: Efetuando download do NHibernate Figura 16: Classe TbPessoa Figura 17: Arquivo de mapeamento da classe TbPessoa para sua tabela correspondente39 Figura 18: Configurando o web.config da aplicação exemplo para utilizar o NHibernate Figura 19: Formulário para inserção de dados Figura 20: Classe NHibernateHelper Figura 21: Código RetornaPessoas() da classe PessoaDAO Figura 22: Método responsável por inserir um registro de uma nova pessoa no banco Figura 23: Método que retorna um registro da tabela TbPessoa Figura 24: Exemplo da classe TbNoticia e do mapeamento dos objetos da classe... 46

10 x Figura 25: Exemplo de inserção de dados utilizando o Gentle.NET Figura 26: Exemplo de consulta utilizando o Gentle Figura 27: Template Browser do MyGeneration Figura 28: Lista de Template Library Figura 29: Ação para gerar os códigos utilizando o Gentle.NET Figura 30: Tela de configuração do que será gerado Figura 31: Mapeamento da classe TbNoticia para o NHibernate Figura 32: Exemplo de Herança utilizando o NHibernate Figura 33: Mapeamento da classe TbNoticia para o Gentle.NET (Parte 1) Figura 34: Mapeamento da classe TbNoticia para o Gentle.NET (Parte 2) Figura 35: Mapeamento da classe TbNoticia para o Gentle.NET (Parte 3) Figura 36: Mapeamento da classe TbNoticia para o Gentle.NET (Parte 4) Figura 37: Mapeamento da classe TbNoticia para o Gentle.NET (Parte 5) Figura 38: Diagrama do banco do gerenciador de notícias Figura 39: O arquivo web.config da aplicação para utilizar o NHibernate Figura 40: O arquivo web.config da aplicação para utilizar o Gentle.NET Figura 41: Utilizando o NHibernate para salvar uma notícia Figura 42: Utilizando o NHibernate para alterar uma notícia Figura 43: Inserindo uma notícia no banco utilizando o Gentle.NET... 66

11 xi LISTA DE ABREVIATURAS BD BDR O/R O/RM SGBD Banco de Dados Banco de Dados Relacional Objeto/Relacional Mapeamento Objeto/Relacional Sistema Gerenciador de Banco de Dados

12 12 1 INTRODUÇÃO Dentro do contexto de desenvolvimento de sistemas um grande problema enfrentado pelos desenvolvedores refere-se à questão de modelar e implementar seguindo o paradigma orientado a objetos e ter que trabalhar com um Sistema de Gerenciamento de Banco de Dados (SGBD) relacional na camada de persistência. Uma alternativa para contornar este problema refere-se à utilização de ferramentas que façam o trabalho de converter os objetos provenientes da lógica de negócio para o banco de dados relacional, e vise-versa. Atualmente, as ferramentas mais utilizadas para fazer este mapeamento, dadas às necessidades dos desenvolvedores em ganhar tempo na hora de mapear e persistir os dados são: Hibernate (desenvolvida para trabalhar com a linguagem de programação Java), Gentle.Net (desenvolvida para o.net), NHibernate (desenvolvida para o.net), entre outras. O NHibernate, ferramenta utilizada neste trabalho juntamente com o Gentle.NET, assim como as outras ferramentas, é um framework ou biblioteca desenvolvida para o.net para persistir e mapear objetos para um banco de dados relacional (AÉCE, 2004). O NHibernate é uma ferramenta derivada do Hibernate (Java) para o.net sendo sua finalidade basicamente a mesma, ou seja, mapear objetos e persistir os mesmos em um SGBD relacional, onde as instruções Struct Query Language (SQL) de gerenciamento dos dados são criadas pelo próprio NHibernate e não pelo desenvolvedor. O Gentle.NET, também tem a mesma finalidade, tendo como principal diferença a forma como são definidos os arquivos de mapeamento. Por exemplo, no NHibernate as configurações do mapeamento são realizadas através de arquivos extensible Markup Language (XML), onde é definido e especificado os atributos das classes, bem como seu tipo de dado. Já no Gentle.NET, o mapeamento é feito direto nas classes de dados, onde é descrito o tipo do atributo, se é chave primária, estrangeira, se pode ser nula, entre outra coisas, assim como é feito no NHibernate no arquivo de mapeamento de cada classe.

13 13 Este trabalho tem como objetivo estudar os conceitos relacionados ao mapeamento de objetos para banco de dados relacionais e realizar um comparativo de performance entre o NHibernate e o Gentle.Net nos quesitos: velocidade de inserção, alteração, pesquisa e exclusão de dados, envolvendo um objeto e, posteriormente, envolvendo vários objetos. Para tanto, será desenvolvido um gerenciador de notícias utilizando estas duas ferramentas para que os objetivos deste trabalho sejam atendidos. Estas ferramentas foram selecionadas porque se optou por trabalhar com a plataforma de desenvolvimento.net. Esta plataforma foi selecionada por causa das facilidades oferecidas no desenvolvimento de aplicações orientadas a objetos, dentre outros benefícios advindos com a programação em ASP.NET. Assim sendo, para atender os objetivos deste trabalho, a seção 2 deste trabalho irá abordar os estudos realizados sobre mapeamento de objetos e persistência de dados utilizando as ferramentas NHibernate e Gentle.NET. A seção 3 apresenta os materiais e métodos, bem como um manual de configuração e utilização das ferramentas utilizadas neste trabalho. Por fim, a seção 4 apresenta os resultados e discussões produzidas nesse trabalho, na seção 5 é apresentado as considerações finais a respeito do trabalho desenvolvido e a seção 6 apresenta as referências bibliográficas utilizadas nesse trabalho.

14 14 2 REVISÃO DE LITERATURA Para que os objetivos deste trabalho fossem atingidos, foram realizadas pesquisas envolvendo o tema a ser estudado, sendo que os mesmos serviram de suporte para o desenvolvimento do gerenciador de notícias, assim como forneceu subsídios para a comparação entre as ferramentas selecionadas e analisadas. 2.1 Banco de Dados Relacional Para que se possa realizar um mapeamento de objetos para um banco de dados relacional, é necessário, antes de qualquer coisa, escolher a ferramenta que será utilizada para mapear os objetos, assim como o Sistema de Gerenciamento de Banco de Dados (SGBD) que gerenciará a base de dados. Ao escolher o SGBD, seja ele Relacional, Objeto Relacional (O/R) ou Orientado a Objetos (OO), uma das maiores preocupações na utilização do banco escolhido refere-se à necessidade de se ter um banco que consiga identificar, organizar, otimizar e suportar comandos do tipo SQL e HQL, que são tipos de comandos que permitem a manipulação das ações sobre o banco de dados, tais como: inserção, alteração, pesquisa e exclusão de dados Hibernate Query Language (HQL) HQL é uma poderosa linguagem de manipulação de dados, similar ao SQL, cujo objetivo é trabalhar sobre as classes de dados e suas propriedades, onde são montadas instruções HQL através das propriedades das classes e, conseqüentemente, são executadas ações no banco de dados utilizado (ROSEINDIA, 2006). Esta linguagem foi criada para ser utilizada pelo Hibernate (Java), que foi expandido para o NHibernate, versão do Hibernate para ser executado com o ASP.NET, e que tem como objetivo ajudar os desenvolvedores.net na codificação de suas aplicações, manipulando os dados do banco, facilitando, assim, o

15 15 trabalho dos desenvolvedores, pois os livra da necessidade de criar as instruções SQL, pois tanto o NHibernate, como Hibernate já fazem isso através da utilização do HQL. Para entender melhor o funcionamento de uma HQL a Figura 1 ilustra um exemplo de consulta que retorna todas as notícias de um banco de dados. Figura 1: Exemplo de uma consulta utilizando HQL no lugar de SQL No exemplo ilustrado acima (Figura 1), a variável hql recebe uma string referente à tabela TbNoticiaCategoria onde, logo após a referência da tabela, a mesma é renomeada para noticia, cujo objetivo é de não precisar utilizar o nome da tabela por inteiro na hora de ordenar os dados. Após a atribuição da string à variável hql, é verificado se a variável column passada como parâmetro é nula. Caso não seja, é acrescentada à variável hql uma outra string que tem a finalidade de ordenar os dados de retorno da consulta realizada segundo o nome da coluna passada pelo parâmetro. Utilizando a HQL é possível realizar diversas formas de consultas como, por exemplo, uma consulta onde serão listadas todas as notícias que estejam dentro do prazo de validade, conforme ilustra a Figura 2.

16 16 Figura 2: Exemplo de uma consulta HQL com restrição No exemplo ilustrado na figura acima, nas linhas 27 e 28, é feita uma restrição na consulta onde estão sendo buscadas somente notícias cuja data de vencimento da mesma seja maior do que a data atual do servidor. Observando a consulta realizada em comparação com uma consulta SQL é notável a semelhança entre as linguagens HQL e SQL, pois as mesmas utilizam cláusulas parecidas e em muitas vezes iguais como é o caso do exemplo ilustrado na Figura 2 nas clausulas FROM e WHERE. Diferentemente da HQL, a SQL utiliza as tabelas do banco de dados e suas colunas para executar uma consulta, inserção, alteração e exclusão de dados, conforme ilustra a Figura 3.

17 17 Figura 3: Exemplo de uma consulta utilizando SQL No exemplo ilustrado na Figura 3, para se fazer uma consulta, diferente da HQL, é necessário fazer o mapeando de todas as tabelas e campos que serão necessários para o retorno da consulta. Comparando as instruções contidas na Figura 1 e 2 com as contidas na Figura 3, observa-se que na Figura 1 e 2 as únicas clausulas utilizadas foram: FROM, WHERE e ORDER BY. Já na Figura 3 foram utilizadas as clausulas: SELECT, FROM e ORDER BY, o que significa que, tanto a linguagem HQL, quanto a SQL compartilham praticamente as mesmas cláusulas ao realizar uma consulta de dados. Porém, a utilização da linguagem HQL e/ou SQL, dá-se de acordo com o contexto ao qual o desenvolvedor está trabalhando. Caso o desenvolvedor esteja trabalhando com o framework NHibernate é mais aconselhável utilizar a HQL, por ser uma linguagem própria do framework que trabalha com as classes de dados e suas propriedades, mas, caso queira utilizar SQL, tanto o NHibernate quanto o Gentle.NET permite utilizar SQL para manipulação dos dados, portanto, a escolha em utilizar SQL ou HQL fica a caráter da necessidade do momento onde a utilização de uma das duas linguagens seja complicada de usar ao invés da outra. 2.2 Persistência de Dados Dentro do contexto de desenvolvimento de sistemas, a persistência de dados é uma forma de manter as informações das aplicações em um meio do qual possam ser recuperadas para

18 18 consultas, entre outras finalidades. Assim sendo, a persistência de dados, segundo DIAS (2005), pode ser definida como sendo: uma forma de manter a existência da informação mesmo fora da aplicação, podendo persistir a informação em um banco de dados, em um arquivo de dados ou qualquer outro meio existente e o fato da informação existir também fora da aplicação faz com que essas informações possam ser compartilhadas por outras aplicações. No geral, existem duas formas de persistência: a tradicional e a prevalência (DIAS, 2005). As próximas seções irão abordar estas duas formas de persistência de dados Persistência Tradicional Esse tipo de persistência é á mais utilizada pelos desenvolvedores, embora seja mais trabalhosa de usar, pois os comandos SQL devem ser montados pelos desenvolvedores e enviados ao banco de dados através de um provider 1 (DIAS, 2005). Para melhorar a utilização desse tipo de persistência, os desenvolvedores web costumam utilizar um framework de persistência. Com a utilização de um framework de persistência, os desenvolvedores não precisam preocupar-se em criar as instruções SQL para realizar as operações de inserção, alteração, pesquisa e exclusão. Isto ocorre porque o próprio framework se encarrega de realizar esta tarefa através de uma classe de manipulação que executa diversas operações no banco de dados. A classe de manipulações é composta por um conjunto de métodos que realiza as ações sobre o banco de dados. Esta classe será ilustrada na seção Para exemplificar o funcionamento da persistência tradicional, a Figura 4 representará a classe Pessoa de uma aplicação qualquer, cuja finalidade é manipular as ações sobre o banco de dados através de comandos SQL, desenvolvidos pelo(s) desenvolvedor(es) da aplicação. 1 Provider é a variável aonde é declarado qual tipo de vinculação de dados será realizado na sua conexão (BASSI, 2006), como, por exemplo, se será utilizado um banco Microsoft Access, ou um SGBD MYSQL, SQLSERVER, entre outros, para a conexão e execução de comandos no banco de dados escolhido.

19 19 Figura 4: Classe utilizada para manipular ações no banco de dados No exemplo da Figura 4 são apresentados os métodos GravarPessoa e GetPessoa da classe Pessoa, que possuem as funções de gravar uma nova pessoa e retornar uma pessoa específica do banco de dados. Observa-se também que é criada uma instância da classe banco, que é a responsável por abrir e fechar uma conexão com o banco de dados. A Figura 5, ilustrada abaixo, refere-se à classe banco, citada acima, que é utilizada por todas as classes desta aplicação utilizada como exemplo.

20 20 Figura 5: Classe que abre e fecha a conexão com o banco de dados A classe ilustrada acima é a responsável por abrir e fechar a conexão com o banco de dados, assim como executar a leitura no mesmo, através do método ler, que recebe uma instrução SQL como parâmetro, abre a conexão com o banco e executa a instrução. Após a execução da instrução SQL, o retorno da consulta é armazenando na variável reader, que será utilizada em todas as classes de dados nos métodos Get das mesmas, que são métodos de busca com retorno e que utiliza o método ler da classe banco para acessar e retornar dados da(s) tabela(s) do banco de dados.

21 21 A próxima seção irá ilustrar o funcionamento de outro tipo de persistência, chamada de persistência prevalência, explicando o que é esse tipo de persistência de dados e exemplificando o seu funcionamento Persistência Prevalência Esse tipo de persistência trabalha com a memória RAM do computador, onde ficam armazenados todos os objetos e dados da aplicação. O fato desse tipo de persistência trabalhar com a memória do computador e não com um banco de dados é por causa do valor da licença de um SGBD ser bastante cara, além de outros quesitos (DIAS, 2005). Pelo fato desse tipo de persistência não utilizar um banco de dados para armazenar e recuperar as informações contidas no mesmo faz os desenvolvedores pensarem que se algumas situações ocorrerem como, por exemplo, a energia acabar, os dados serão perdidos (DIAS, 2005). Porém, esse pensamento não é correto, pois, a prevalência trabalha com os conceitos de PrevalenceEngine, PrevalentSystem, Snapshots e Operation, descritos a seguir (MENDES, 2006): PrevalenceEngine é o responsável pela execução, recuperação e registro de alterações decorridas no PrevalentSystem. PrevalentSystem trata-se de uma classe definida pelo usuário onde serão colocadas as referências de todos os objetos que serão persistidos da aplicação. Snapshots é um tipo de backup das informações e objetos da aplicação onde o PrevalenceEngine serializa os objetos e o Snapshots armazena, em forma de log no disco rígido do computador, os dados da aplicação e os objetos para uma possível recuperação após uma queda de energia, por exemplo. Operation é uma classe de operações utilizada pelo PrevalenceEngine para executar operações sobre os objetos da aplicação. Para o melhor entendimento deste mecanismo de persistência, observam-se os trechos de códigos apresentados nas Figuras 6 e 7, onde são mostrados desde a criação das classes serializadas 2, até as operações de inserção, alteração, pesquisa e exclusão de objetos prevalentes. 2 Classes serializadas é uma forma de acesso aos dados de uma aplicação através de um arquivo XML onde um usuário, após logar no site web e realizar uma consulta, ou automaticamente a consulta tiver sido inicializada, a forma de acesso aos dados será feita em cima de um documento XML carregado com os dados da aplicação.

22 22 Figura 6: Classe Pessoa Serializada Conforme ilustra a Figura 6, sempre que for utilizada prevalência, as classes de negócios devem ser serializadas para que os objetos possam ser persistidos. Após a criação das classes de negócios, o próximo passo é fazer a conexão entre os objetos de persistência e a biblioteca de prevalência na hora de executar a aplicação, conforme ilustra a Figura 7. Figura 7: Conexão entre os objetos persistentes e a biblioteca de prevalência. Exemplo modificado de (SANTOS, MACEDO, CITRANGULO & VISCONTI, 2003).

23 23 A Figura 7 ilustra um método que é invocado para a inicialização da aplicação, onde uma instância de PrevalenceEngine é criada para que sejam utilizadas as funções de prevalência. Logo após, é utilizado uma instância do objeto SystemDatabase para verificar a existência de algum log gravado na pasta ProjetoTCC do servidor da aplicação, onde serão recuperados os dados da aplicação do último log gravado em disco na memória do servidor. As duas últimas linhas de comandos adicionam na aplicação os dois objetos instanciados para que possam ser utilizadas as funções contidas nos mesmos. A Figura 8 apresenta o método que realiza uma inserção utilizando a prevalência. Figura 8: Método de inserção utilizando prevalência Conforme ilustra a Figura 8, a execução de uma inserção é feita utilizando uma interface chamada ICommand onde, através da mesma, o método Execute é invocado e utilizado pela biblioteca de prevalência para fazer uma inserção. A Figura 9 ilustra o método que realiza a alteração utilizando a prevalência.

24 24 Figura 9: Método de Alteração utilizando prevalência A execução do método de atualização é semelhante ao de inserção, ou seja, é invocado a interface ICommand para que a execução da atualização possa ocorrer. O método que realiza a exclusão é mostrado na Figura 10. Figura 10: Método de Exclusão utilizando prevalência Assim como os outros métodos apresentados, o método que realiza a exclusão também utiliza a interface ICommand para executar a exclusão utilizando a biblioteca de prevalência. A execução desse método é bastante simples, ao executar o método Execute é feita uma busca pela pessoa que contenha o _id correspondente e, logo em seguida, caso a pessoa tenha sido encontrada, é feita à exclusão da mesma. Por fim, o que realiza a busca de pessoa é ilustrado na Figura 11.

25 25 Figura 11: Método que realiza a consulta de pessoa utilizando prevalência Todos os métodos apresentados anteriormente utilizam a interface ICommand para executar os métodos da biblioteca de prevalência. Já o método de consulta é um pouco diferente, pois a interface que utiliza a biblioteca de prevalência que faz a consulta de dados é a IQuery onde é passado o id do objeto Pessoa para a interface IQuery, responsável por fazer uma busca binária dentro de um vetor de objetos persistidos e retornar o objeto pesquisado. Assim, de acordo com o que foi apresentado sobre prevalência, pode-se concluir que a mesma tem um ganho em desempenho devido ao não acesso a disco para, por exemplo, consultar dados. No entanto, esse tipo de persistência é desvantajoso quando se tem uma aplicação que tenha que fazer acesso a milhares de dados onde, simultaneamente, muitos usuários estejam acessando. Como os dados ficam em memória, a mesma ficaria sobrecarregada com tantos acessos fazendo com que a aplicação pare de funcionar (DIAS, 2005). As próximas seções deste trabalho abordarão alternativas para persistir dados das aplicações como, por exemplo, utilizando framework de persistência de dados, técnicas estas que estão sendo utilizadas por muitos desenvolvedores por ser mais fácil e simples de trabalhar com mapeamento de dados e a persistência dos mesmos. 2.3 Mapeamento Objeto/Relacional Mapeamento Objeto/Relacional ou O/RM é uma camada a mais que o desenvolvedor codifica cuja finalidade é a de mapear as classes e seus atributos para o banco de dados ou fazer o inverso, mapear das tabelas e colunas para as classes de dados e seus atributos.

26 26 Existem várias formas de se fazer tal tipo de mapeamento, dentre as quais se destaca o uso de frameworks que utilizam arquivos XML para mapear e persistir os objetos de uma aplicação. Ao utilizar um framework, os comandos SQL para as inserções, alterações, pesquisas e exclusões de dados não serão mais criados pelo desenvolvedor, pois tal responsabilidade passará a ser do framework utilizado (DIAS, 2005). A utilização de um framework de persistência, além de gerar os comandos SQL que realizam as operações de inserção, alteração, seleção e exclusão, é um mecanismo de segurança capaz de eliminar os problemas ocasionados com os comandos de SQL injection. Por exemplo, em um formulário de autenticação de usuários, supondo que o desenvolvedor não trate a apóstrofe ( ), ao tentar logar com um login fictício, tal como: testa ndo, a SQL de autenticação irá retornar um erro do tipo incorrect Sintax, no qual será uma das diversas formas de entrada para o hacker invadir o sistema e fazer o que quiser, como, por exemplo, excluir tabelas entre outras coisas.assim, ao retornar um erro de SQL, se o hacker quiser excluir uma tabela do banco de dados, bastará fazer o seguinte código no campo login: login = '; drop table users-- senha =, Em geral existem vários tipos de frameworks de persistência que trabalham com o C#, Java, entre outras linguagens, cuja finalidade é basicamente a mesma, ou seja, mapear e persistir os objetos da aplicação para um banco de dados relacional. Para que o mapeamento de objetos possa ocorrer, existem algumas formas a serem seguidas pelo desenvolvedor, formas estas abordadas na próxima seção Formas de Mapeamento Existem, em geral, duas formas de se mapear objetos. A primeira forma é mapear as classes de negócios para as tabelas do banco de dados. A segunda forma corresponde ao inverso, ou seja, mapear as tabelas do banco de dados, bem como seus atributos, para as classes de dados. Na primeira forma, os atributos das classes são mapeados para as colunas de uma ou várias tabelas do banco de dados, assim como os relacionamentos entre as tabelas serão feitos com base nas referências contidas nas classes mapeadas. Quanto à persistência desses dados, nem todos os atributos das classes precisam ser persistidos, como, por exemplo, atributos que podem ser calculados dinamicamente, como

27 27 idade, valor total de uma compra, e etc. Dentre os exemplos citados, o atributo idade não precisa ser persistido porque se pode calculá-lo subtraindo a data atual da sua data de nascimento. Além do fato de nem todo atributo precisar ser persistido, nem todas as classes de dados de uma aplicação é necessariamente uma tabela e vice-versa (QUICOLI, 2006). Um exemplo desta situação refere-se a uma tabela de tipos, por exemplo, PessoaTipo (classe utilizada para dar permissão aos usuários de uma aplicação de acordo com seu tipo) onde ao mapear essa tabela a mesma não corresponderá a uma classe igual as demais, ou seja, só conterá Enum referenciando os tipos contidos na tabela onde uma outra classe poderá utilizar da classe de Enum referente a esta classe PessoaTipo para realizar comparações de tipo, entre outras situações. Para exemplificar essa primeira forma, foi criada uma classe chamada Notícia e uma tabela chamada TbNotícia, conforme ilustra a Figura 12. Figura 12: Mapeamento feito da classe Noticia para a tabela TbNoticia A Figura 12 apresenta o mapeamento da classe Noticia para a tabela TbNoticia. Observa-se que os atributos, assim como seus tipos de dados foram mantidos, com exceção do atributo id_noticia_categoria, que ao ser mapeado para a tabela TbNoticia, virou uma chave estrangeira da tabela TbNoticiaCategoria devido a sua referência contida na classe Noticia.

28 28 Para ilustrar a segunda forma de mapear objetos (do banco de dados para as classes de dados), foi utilizada a tabela TbNoticia e sua respectiva classe de dados, conforme ilustra a Figura 13. Figura 13: Mapeamento feito da tabela TbNoticia para a classe Noticia Conforme mostra a Figura 13, ao mapear tabelas para as classes, ocorreu um inverso da primeira forma, ou seja, as tabelas do banco viraram as classes, e as colunas de cada tabela viraram atributos da classe correspondente, além de serem mantidos os tipos de dados, com exceção das chaves estrangeiras da tabela TbNoticia, responsáveis por manter as referências às tabelas TbNoticiaCategoria e TbPessoa, que viraram objetos das suas respectivas classes. Além das duas formas de Mapeamento Objeto-Relacional, algumas etapas são necessárias e devem ser seguidas para que o mapeamento seja feito corretamente. A próxima seção irá abordar estas etapas.

Criando uma aplicação Web em C# usando o NHibernate

Criando uma aplicação Web em C# usando o NHibernate Criando uma aplicação Web em C# usando o NHibernate Apresento neste artigo como criar uma aplicação web totalmente orientada a objetos usando o framework NHibernate e a linguagem C#. Nossa meta é construir

Leia mais

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 10 Persistência de Dados

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Persistência Com JPA & Hibernate Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Mapeamento Objeto-Relacional Contexto: Linguagem de programação orientada a objetos

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

Requisitos do Sistema

Requisitos do Sistema PJ8D - 017 ProJuris 8 Desktop Requisitos do Sistema PJ8D - 017 P á g i n a 1 Sumario Sumario... 1 Capítulo I - Introdução... 2 1.1 - Objetivo... 2 1.2 - Quem deve ler esse documento... 2 Capítulo II -

Leia mais

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza PHP e Banco de Dados progweb2@thiagomiranda.net Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net PHP e Banco de Dados É praticamente impossível

Leia mais

Manual de Instalação e Configuração do SQL Express

Manual de Instalação e Configuração do SQL Express Manual de Instalação e Configuração do SQL Express Data alteração: 19/07/11 Pré Requisitos: Acesse o seguinte endereço e faça o download gratuito do SQL SRVER EXPRESS, conforme a sua plataforma x32 ou

Leia mais

Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br

Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br 1. Abordagem geral Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br Em primeiro plano, deve-se escolher com qual banco de dados iremos trabalhar. Cada banco possui suas vantagens,

Leia mais

Persistência de dados com JPA. Hélder Antero Amaral Nunes haanunes@gmail.com

Persistência de dados com JPA. Hélder Antero Amaral Nunes haanunes@gmail.com Persistência de dados com JPA Hélder Antero Amaral Nunes haanunes@gmail.com O que é persistência? A persistência de dados é o fato de pegar um dado e torná-lo persistente, ou seja, salvar em algum banco

Leia mais

Procedimentos para Instalação do SISLOC

Procedimentos para Instalação do SISLOC Procedimentos para Instalação do SISLOC Sumário 1. Informações Gerais...3 2. Instalação do SISLOC...3 Passo a passo...3 3. Instalação da Base de Dados SISLOC... 11 Passo a passo... 11 4. Instalação de

Leia mais

João Filho Borges Leite

João Filho Borges Leite João Filho Borges Leite DESENVOLVIMENTO DE UM SISTEMA WEB DE GERENCIAMENTO PARA AS DISCIPLINAS DE MODELAGEM E DESENVOLVIMENTO DE SISTEMAS DE INFORMAÇÃO Palmas 2006 i João Filho Borges Leite DESENVOLVIMENTO

Leia mais

MANUAL DO ADMINISTRADOR DO MÓDULO

MANUAL DO ADMINISTRADOR DO MÓDULO MANUAL DO ADMINISTRADOR DO MÓDULO ÍNDICE Relatórios Dinâmicos... 3 Requisitos de Sistema... 4 Estrutura de Dados... 5 Operadores... 6 Tabelas... 7 Tabelas x Campos... 9 Temas... 13 Hierarquia Relacionamento...

Leia mais

Manual de Instalação PIMSConnector em Windows

Manual de Instalação PIMSConnector em Windows Manual de Instalação PIMSConnector em Windows Julho/2015 Sumário 1. Contexto de negócio (Introdução)... 3 2. Pré-requisitos instalação/implantação/utilização... 4 3. JBOSS... 6 3.1. Instalação... 6 3.2.

Leia mais

COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA

COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA 73 COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA Daniel José Angotti Analista de Negócio, Repom S/A djangotti@gmail.com Carlos

Leia mais

Procedimentos para Reinstalação do Sisloc

Procedimentos para Reinstalação do Sisloc Procedimentos para Reinstalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Criação de backups importantes... 3 3. Reinstalação do Sisloc... 4 Passo a passo... 4 4. Instalação da base de dados Sisloc...

Leia mais

SQL Structured Query Language

SQL Structured Query Language Janai Maciel SQL Structured Query Language (Banco de Dados) Conceitos de Linguagens de Programação 2013.2 Structured Query Language ( Linguagem de Consulta Estruturada ) Conceito: É a linguagem de pesquisa

Leia mais

WebApps em Java com uso de Frameworks

WebApps em Java com uso de Frameworks WebApps em Java com uso de Frameworks Fred Lopes Índice O que são frameworks? Arquitetura em camadas Arquitetura de sistemas WEB (WebApps) Listagem resumida de frameworks Java Hibernate O que são frameworks?

Leia mais

Manual de Instalação PIMSConnector em Linux

Manual de Instalação PIMSConnector em Linux Manual de Instalação PIMSConnector em Linux Julho/2015 Sumário 1. Contexto de negócio (Introdução)... 3 2. Pré-requisitos instalação/implantação/utilização... 4 3. JBOSS... 6 3.1. Instalação... 6 3.2.

Leia mais

TCM Informática Rua Senador Ivo D'Aquino, 121 Bairro: Lagoa da Conceição 88062-050 Florianópolis, SC Brasil Fone +55 48 3334-8877 Fax +55 48

TCM Informática Rua Senador Ivo D'Aquino, 121 Bairro: Lagoa da Conceição 88062-050 Florianópolis, SC Brasil Fone +55 48 3334-8877 Fax +55 48 1.1 Roteiro para Instalação do Software 1.1.1 Servidor 1.1.1.1 Requisitos de Hardware Servidor de pequeno porte Servidor dedicado: Processador: 500Mhz Memória RAM: 256MB Hard Disk: 20 ou 40GB (7.500rpm)

Leia mais

ASP.NET 2.0 - Visual Studio 2005 (Whidbey) Ramon Durães

ASP.NET 2.0 - Visual Studio 2005 (Whidbey) Ramon Durães ASP.NET 2.0 - Visual Studio 2005 (Whidbey) Ramon Durães O ASP.NET que é a camada de desenvolvimento de aplicações web da plataforma.net vem agradando em muito os desenvolvedores de todo o mundo desde o

Leia mais

Procedimentos para Instalação do Sisloc

Procedimentos para Instalação do Sisloc Procedimentos para Instalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Instalação do Sisloc... 3 Passo a passo... 3 3. Instalação da base de dados Sisloc... 16 Passo a passo... 16 4. Instalação

Leia mais

APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV

APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV CIÊNCIA DA COMPUTAÇÃO PROF. ERWIN ALEXANDER UHLMANN Universidade Guarulhos Página 1 Agradecimentos Agradeço a todos os alunos que com suas dúvidas me ajudaram a

Leia mais

Figura 1.1 Código de inserção não baseado em Hibernate. Figura 1.2 Código de inserção baseado em Hibernate

Figura 1.1 Código de inserção não baseado em Hibernate. Figura 1.2 Código de inserção baseado em Hibernate Hibernate É um framework para mapeamento objeto/relacional para aplicações em Java. Tem como objetivo mor o mapeamento de classes Java em tabelas do banco de dados e viceversa, possibilitando a realização

Leia mais

Persistindo dados com TopLink no NetBeans

Persistindo dados com TopLink no NetBeans Persistindo dados com TopLink no NetBeans O que é TopLink? O TopLink é uma ferramenta de mapeamento objeto/relacional para Java. Ela transforma os dados tabulares de um banco de dados em um grafo de objetos

Leia mais

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados

Leia mais

Introdução a Informática. Prof.: Roberto Franciscatto

Introdução a Informática. Prof.: Roberto Franciscatto Introdução a Informática Prof.: Roberto Franciscatto 6.1 ARQUIVOS E REGISTROS De um modo geral os dados estão organizados em arquivos. Define-se arquivo como um conjunto de informações referentes aos elementos

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL 1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)

Leia mais

Principais Comandos SQL Usados no MySql

Principais Comandos SQL Usados no MySql Principais Comandos SQL Usados no MySql O que é um SGBD? Um Sistema Gerenciador de Banco de Dados (como no Brasil) ou Sistema Gestor de Base de Dados (SGBD) é o conjunto de programas de computador (softwares)

Leia mais

MANUAL DE INSTALAÇÃO. LSoft Ponto Eletrônico

MANUAL DE INSTALAÇÃO. LSoft Ponto Eletrônico MANUAL DE INSTALAÇÃO LSoft Ponto Eletrônico SUPORTE TÉCNICO AO USUÁRIO: Atendimento On-line: www.lsoft.com.br E-Mail: suporte@lsoft.com.br (37) 3237-8900 Versão 1.0-2014. Todos os direitos reservados.

Leia mais

Manual de Instalação e Configuração

Manual de Instalação e Configuração e Configuração MyABCM 4.0 Versão 4.00-1.00 2 Copyright MyABCM. Todos os direitos reservados Reprodução Proibida Índice Introdução... 5 Arquitetura, requisitos e cenários de uso do MyABCM... 7 Instalação

Leia mais

Manual de Instalação Flex

Manual de Instalação Flex Manual de Instalação Flex Sumário 1. Sobre este documento... 3 2. Suporte técnico... 3 3. Requisitos de hardware... 4 4. Instalação... 5 4.1. Instalação no servidor... 5 4.1.1. Instalação do sistema...

Leia mais

MANUAL PARA USO DO SISTEMA GCO Gerenciador Clínico Odontológico

MANUAL PARA USO DO SISTEMA GCO Gerenciador Clínico Odontológico MANUAL PARA USO DO SISTEMA GCO Gerenciador Clínico Odontológico O GCO é um sistema de controle de clínicas odontológicas, onde dentistas terão acesso a agendas, fichas de pacientes, controle de estoque,

Leia mais

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org

Conectando Bancos de Dados Microsoft Access no BrOffice.org Base. fornecido pelo Projeto de Documentação do BrOffice.org Conectando Bancos de Dados Microsoft Access no BrOffice.org Base fornecido pelo Projeto de Documentação do BrOffice.org Índice 1 Introdução...2 1.1 Versão... 2 1.2 Licenciamento...2 1.3 Mensagem do Projeto

Leia mais

GLOBAL SCIENCE AND TECHNOLOGY (ISSN 1984 3801)

GLOBAL SCIENCE AND TECHNOLOGY (ISSN 1984 3801) GLOBAL SCIENCE AND TECHNOLOGY (ISSN 1984 3801) UTILIZAÇÃO DE APLICATIVOS BASE E CALC DO PACOTE BROFFICE.ORG PARA CRIAÇÃO DE SISTEMA DE INFORMAÇÃO DE PEQUENO PORTE Wílson Luiz Vinci 1 Marcelo Gonçalves

Leia mais

INSTALAÇÃO PRINTERTUX Tutorial

INSTALAÇÃO PRINTERTUX Tutorial INSTALAÇÃO PRINTERTUX Tutorial 2 1. O Sistema PrinterTux O Printertux é um sistema para gerenciamento e controle de impressões. O Produto consiste em uma interface web onde o administrador efetua o cadastro

Leia mais

Acessando um Banco de Dados

Acessando um Banco de Dados Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para

Leia mais

19/05/2009. Módulo 1

19/05/2009. Módulo 1 ASP.NET Módulo 1 Objetivo Mostrar os conceitos fundamentais da plataforma Microsoft.Net e suas ferramentas; Apresentar os conceitos fundamentais de aplicações web e seus elementos; Demonstrar de forma

Leia mais

Classes de Entidades Persistentes JDB

Classes de Entidades Persistentes JDB Classes de Entidades Persistentes JDB Brasil, Natal-RN, 07 de setembro de 2011 Welbson Siqueira Costa www.jdbframework.com Nota de Retificação: em 11/12/2011 a Listagem 3 desse tutorial sofreu uma pequena

Leia mais

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate Luis Gustavo Zandarim Soares 1, Késsia Rita da Costa Marchi 1 1 Universidade Paranaense (Unipar) Paraná PR Brasil luisgustavo@live.co.uk,

Leia mais

JPA: Persistência padronizada em Java

JPA: Persistência padronizada em Java JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação flaviocurte.java@gmail.com Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes

Leia mais

CRIANDO, ALTERADO E EXCLUINDO TABELAS, INSERINDO, SELECIONANDO, ALTERANDO E EXCLUINDO DADOS

CRIANDO, ALTERADO E EXCLUINDO TABELAS, INSERINDO, SELECIONANDO, ALTERANDO E EXCLUINDO DADOS CRIANDO, ALTERADO E EXCLUINDO TABELAS, INSERINDO, SELECIONANDO, ALTERANDO E EXCLUINDO DADOS Prof. Me. Hélio Esperidião SQL - STRUCTURED QUERY LANGUAGE SQL é uma linguagem padronizada para a definição e

Leia mais

Manual de Instalação ProJuris8

Manual de Instalação ProJuris8 Manual de Instalação ProJuris8 Sumário 1 - Requisitos para a Instalação... 3 2 - Instalação do Firebird.... 4 3 - Instalação do Aplicativo ProJuris 8.... 8 4 - Conexão com o banco de dados.... 12 5 - Ativação

Leia mais

SIGEP WEB - Gerenciador de Postagens dos Correios Manual do Usuário

SIGEP WEB - Gerenciador de Postagens dos Correios Manual do Usuário MANUAL DO USUÁRIO 2 ÍNDICE 1. PRÉ REQUISITOS PARA UTILIZAÇÃO DO SIGEP WEB 04 2. PROCEDIMENTOS PARA DOWNLOAD DO SISTEMA 04 3. INSTALANDO O SIGEP WEB 07 4. CONFIGURAÇÕES DO SISTEMA 09 COMPARTILHANDO O BANCO

Leia mais

Manual Captura S_Line

Manual Captura S_Line Sumário 1. Introdução... 2 2. Configuração Inicial... 2 2.1. Requisitos... 2 2.2. Downloads... 2 2.3. Instalação/Abrir... 3 3. Sistema... 4 3.1. Abrir Usuário... 4 3.2. Nova Senha... 4 3.3. Propriedades

Leia mais

Manual Framework Daruma para ECF

Manual Framework Daruma para ECF Manual Framework Daruma para ECF DESENVOLVENDO SOLUÇÕES Autor: Leandro Doc. Vrs. 01 Revisão: Laila Maria Aprovado em: Março de 2015. Nota de copyright Copyright 2015 Teorema Informática, Guarapuava. Todos

Leia mais

15 Conceitos de Bancos de Dados com o LibreOffice Base

15 Conceitos de Bancos de Dados com o LibreOffice Base Introdução a Informática - 1º semestre AULA 14 Prof. André Moraes Objetivos desta aula: Explorar as propriedades na criação de bancos de dados no LibreOffice Base; Criar e explorar tabelas; Criar e explorar

Leia mais

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS Servidor: O servidor é todo computador no qual um banco de dados ou um programa (aplicação) está instalado e será COMPARTILHADO para outros computadores,

Leia mais

GUIA RÁPIDO DE UTILIZAÇÃO DO APLICATIVO RDB2LOD

GUIA RÁPIDO DE UTILIZAÇÃO DO APLICATIVO RDB2LOD GUIA RÁPIDO DE UTILIZAÇÃO DO APLICATIVO RDB2LOD Em sua versão inicial, o aplicativo RDB2LOD foi desenvolvido para instalação e execução em ambiente de máquina virtual Java, e oferece suporte aos SGBDs

Leia mais

Conteúdo Programático de PHP

Conteúdo Programático de PHP Conteúdo Programático de PHP 1 Por que PHP? No mercado atual existem diversas tecnologias especializadas na integração de banco de dados com a WEB, sendo o PHP a linguagem que mais se desenvolve, tendo

Leia mais

GBD. Introdução PROF. ANDREZA S. AREÃO

GBD. Introdução PROF. ANDREZA S. AREÃO GBD Introdução PROF. ANDREZA S. AREÃO Sistema de arquivos X Sistemas de Banco de Dados Sistema de arquivos Sistema de Banco de Dados Aplicativos Dados (arquivos) Aplicativos SGBD Dados (arquivos) O acesso/gerenciamento

Leia mais

Manual de Instalação do Facilite e Configuração do Banco de Dados

Manual de Instalação do Facilite e Configuração do Banco de Dados Pagina 1 Titulo do Manual [Parâmetros Gerais] Elaboração [Ricardo Francisco Mizael] Versão 1.1 Data Elaboração 01/08/2011 Paginas 33 Data Revisão 25/11/2011 Pagina 2 Conteúdo do Manual Apresentação...3

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Introdução Banco de Dados

Introdução Banco de Dados Introdução Banco de Dados Vitor Valerio de Souza Campos Adaptado de Vania Bogorny Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel matrícula em

Leia mais

Manual de Instalação

Manual de Instalação Manual de Instalação Sumário 1. Sobre este documento... 3 2. Suporte técnico... 3 3. Requisitos de hardware... 4 3.1. Estação... 4 3.2. Servidor... 4 4. Instalação... 5 4.1. Instalação no servidor... 5

Leia mais

2008.1 SQL. Autor: Renata Viegas

2008.1 SQL. Autor: Renata Viegas SQL Autor: Renata Viegas A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua

Leia mais

Manual de Instalação, Administração e Uso do Sistema Elétric

Manual de Instalação, Administração e Uso do Sistema Elétric Manual de Instalação, Administração e Uso do Sistema Elétric Versão 1.0 Autores Bruna Cirqueira Mariane Dantas Milton Alves Robson Prioli Nova Odessa, 10 de Setembro de 2013 Sumário Apoio 1. Licença deste

Leia mais

Manual de Instalação

Manual de Instalação Manual de Instalação Sumário 1. Sobre este documento...3 2. Suporte técnico...3 3. Requisitos de hardware...3 3.1. Estação...3 3.2. Servidor...4 4. Instalação...4 4.1. Instalação do Group Folha no servidor...6

Leia mais

MANUAL DO USUÁRIO SUMÁRIO

MANUAL DO USUÁRIO SUMÁRIO SUMÁRIO 1. Home -------------------------------------------------------------------------------------------------------- 7 2. Cadastros -------------------------------------------------------------------------------------------------

Leia mais

Banco de Dados. Maurício Edgar Stivanello

Banco de Dados. Maurício Edgar Stivanello Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado

Leia mais

Banco de Dados. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Banco de Dados. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Banco de Dados Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Roteiro Mapeamento de objetos para modelo relacional Estratégias de persistência Persistência JDBC Mapeando Objetos para o Modelo Relacional

Leia mais

Manual do Usuário. Sistema Financeiro e Caixa

Manual do Usuário. Sistema Financeiro e Caixa Manual do Usuário Sistema Financeiro e Caixa - Lançamento de receitas, despesas, gastos, depósitos. - Contas a pagar e receber. - Emissão de cheque e Autorização de pagamentos/recibos. - Controla um ou

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Curso: Sistemas de Informações Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 7 JPA A Persistência com JPA Para configurar o JPA

Leia mais

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA DE ENGENHARIA DEPARTAMENTO DE ELETRÔNICA. Sistema de Gerenciamento Eletrônico de Documentos

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA DE ENGENHARIA DEPARTAMENTO DE ELETRÔNICA. Sistema de Gerenciamento Eletrônico de Documentos UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA DE ENGENHARIA DEPARTAMENTO DE ELETRÔNICA Sistema de Gerenciamento Eletrônico de Documentos Autor: Evandro Bastos Tavares Orientador: Antônio Claudio Gomez

Leia mais

O programa Mysql acompanha o pacote de instalação padrão e será instalado juntamente com a execução do instalador.

O programa Mysql acompanha o pacote de instalação padrão e será instalado juntamente com a execução do instalador. - INTRODUÇÃO O Programa pode ser instalado em qualquer equipamento que utilize o sistema operacional Windows 95 ou superior, e seu banco de dados foi desenvolvido em MySQL, sendo necessário sua pré-instalação

Leia mais

SISTEMA GERENCIAL TRATORPLAN

SISTEMA GERENCIAL TRATORPLAN SISTEMA GERENCIAL TRATORPLAN SIGET Fabrício Pereira Santana¹, Jaime William Dias¹, ², Ricardo de Melo Germano¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil fabricioblack@gmail.com germano@unipar.br

Leia mais

Processo de Envio de email

Processo de Envio de email Processo de Envio de email Introdução O envio de documentos de forma eletrônica vem sendo muito utilizado, assim o envio de arquivos, relatórios, avisos, informações é realizado via e-mail. O sistema disponibiliza

Leia mais

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho Banco de Dados de Músicas Andre Lima Rocha Campos Osório Pereira Carvalho Definição Aplicação Web que oferece ao usuário um serviço de busca de músicas e informações relacionadas, como compositor, interprete,

Leia mais

Guia de administração para a integração do Portrait Dialogue 6.0. Versão 7.0A

Guia de administração para a integração do Portrait Dialogue 6.0. Versão 7.0A Guia de administração para a integração do Portrait Dialogue 6.0 Versão 7.0A 2013 Pitney Bowes Software Inc. Todos os direitos reservados. Esse documento pode conter informações confidenciais ou protegidas

Leia mais

HIBERNATE EM APLICAÇÃO JAVA WEB

HIBERNATE EM APLICAÇÃO JAVA WEB HIBERNATE EM APLICAÇÃO JAVA WEB Raul Victtor Barbosa Claudino¹, Ricardo Ribeiro Rufino¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil victtor.claudino@gmail.com, ricardo@unipar.br Resumo: Este

Leia mais

Front-End Uso da Linguagem Turbo Delphi para Acesso ao Banco de Dados Mysql

Front-End Uso da Linguagem Turbo Delphi para Acesso ao Banco de Dados Mysql Universidade Federal de Mato Grosso-UFMT Sistemas de Informação Laboratório de Programação Visual Prof. Clóvis Júnior Front-End Uso da Linguagem Turbo Delphi para Acesso ao Banco de Dados Mysql Estrutura

Leia mais

Banco de Dados I 2007. Módulo I: Introdução a Sistemas de Banco de Dados. (Aula 1) Clodis Boscarioli

Banco de Dados I 2007. Módulo I: Introdução a Sistemas de Banco de Dados. (Aula 1) Clodis Boscarioli Banco de Dados I 2007 Módulo I: Introdução a Sistemas de Banco de Dados (Aula 1) Clodis Boscarioli Agenda: Apresentação do Plano de Ensino; Aspectos Históricos; Estrutura Geral de um SGBD; Profissionais

Leia mais

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES w w w. i d e a l o g i c. c o m. b r INDICE 1.APRESENTAÇÃO 2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software

Leia mais

Manual de Instalação e Configuração do Sistema Cali LAB View

Manual de Instalação e Configuração do Sistema Cali LAB View Manual de Instalação e Configuração do Sistema Cali LAB View www.cali.com.br - Manual de Instalação e Configuração do Sistema Cali LAB View - Página 1 de 29 Índice INSTALAÇÃO E CONFIGURAÇÃO (FIREBIRD E

Leia mais

Persistência em Software Orientado a Objetos:

Persistência em Software Orientado a Objetos: Persistência em Software Orientado a Objetos: Abordagens Utilizando Frameworks OpenSource Marcelo Santos Daibert Orientador: Marco Antônio Pereira Araújo Co-Orientadora: Alessandreia Marta de Oliveira

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Uso do SQLite no Android Professor: Danilo Giacobo OBJETIVOS DA AULA Aprender a persistir dados utilizando o banco de dados SQLite. Conhecer e utilizar a classe SQLiteOpenHelper.

Leia mais

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br Desenvolvimento Web Saymon Yury C. Silva Analista de Sistemas http://www.saymonyury.com.br Vantagens Informação em qualquer hora e lugar; Rápidos resultados; Portabilidade absoluta; Manutenção facilitada

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os

Leia mais

O programa Mysql acompanha o pacote de instalação padrão e será instalado juntamente com a execução do instalador.

O programa Mysql acompanha o pacote de instalação padrão e será instalado juntamente com a execução do instalador. INTRODUÇÃO O Programa pode ser instalado em qualquer equipamento que utilize o sistema operacional Windows 95 ou superior, e seu banco de dados foi desenvolvido em MySQL, sendo necessário sua pré-instalação

Leia mais

SIAFRO Módulo de Devolução 1.0

SIAFRO Módulo de Devolução 1.0 Conteúdo do Manual. Introdução. Capítulo Requisitos. Capítulo Instalação 4. Capítulo Configuração 5. Capítulo 4 Cadastro de Devolução 6. Capítulo 5 Relatório 7. Capítulo 6 Backup 8. Capítulo 7 Atualização

Leia mais

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário Sumário Conceitos Microsoft Access 97... 01 Inicialização do Access... 02 Convertendo um Banco de Dados... 03 Criando uma Tabela... 06 Estrutura da Tabela... 07 Propriedades do Campo... 08 Chave Primária...

Leia mais

Impressão e Fotolito Oficina Gráfica da EDITORA VIENA. Todos os direitos reservados pela EDITORA VIENA LTDA

Impressão e Fotolito Oficina Gráfica da EDITORA VIENA. Todos os direitos reservados pela EDITORA VIENA LTDA Autores Karina de Oliveira Wellington da Silva Rehder Consultores em Informática Editora Viena Rua Regente Feijó, 621 - Centro - Santa Cruz do Rio Pardo - SP CEP 18.900-000 Central de Atendimento (0XX14)

Leia mais

2008.1. A linguagem SQL

2008.1. A linguagem SQL SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão

Leia mais

CAPÍTULO 8 Conexões de banco de dados para programadores ASP.NET

CAPÍTULO 8 Conexões de banco de dados para programadores ASP.NET CAPÍTULO 8 Conexões de banco de dados para programadores ASP.NET Para utilizar um banco de dados com um aplicativo ASP.NET, é necessário criar uma conexão de banco de dados no Macromedia Dreamweaver MX.

Leia mais

Android e Bancos de Dados

Android e Bancos de Dados (Usando o SQLite) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

Leia mais

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO UTILIZANDO O HIBERNATE Rafael Laurino GUERRA, Dra. Luciana Aparecida Martinez ZAINA Faculdade de Tecnologia de Indaiatuba FATEC-ID 1 RESUMO Este artigo apresenta

Leia mais

Criação Visual de Consultas. Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes abrahao.lopes@ifrn.edu.

Criação Visual de Consultas. Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes abrahao.lopes@ifrn.edu. Criação Visual de Consultas Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes abrahao.lopes@ifrn.edu.br Introdução A complexidade dos sistemas informatizados atuais

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

TUTORIAL DE INSTALAÇÃO Windows Server 2003 32 Bits. Rua Maestro Cardim, 354 - cj. 121 CEP 01323-001 - São Paulo - SP (11) 3266-2096

TUTORIAL DE INSTALAÇÃO Windows Server 2003 32 Bits. Rua Maestro Cardim, 354 - cj. 121 CEP 01323-001 - São Paulo - SP (11) 3266-2096 TUTORIAL DE INSTALAÇÃO Windows Server 2003 32 Bits Índice Geral Antes de Começar 2 Instalação do MS-IIS 6 4 Instalação do MS-IIS 6 Resources Kit 6 Instalação do PHP 7 Instalação do ZEND Optimizer 8 Instalação

Leia mais

Cadastro de Orçamento Utilizando Tablet Android

Cadastro de Orçamento Utilizando Tablet Android Cadastro de Orçamento Utilizando Tablet Android Instalação, configuração e manual 1 Conteúdo Instalação... 4 Requisitos mínimos... 4 Windows 8... 5 Instalação do IIS no Windows 8... 5 Configuração do IIS

Leia mais

www.neteye.com.br NetEye Guia de Instalação

www.neteye.com.br NetEye Guia de Instalação www.neteye.com.br NetEye Guia de Instalação Índice 1. Introdução... 3 2. Funcionamento básico dos componentes do NetEye...... 3 3. Requisitos mínimos para a instalação dos componentes do NetEye... 4 4.

Leia mais

FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C#

FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C# FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C# Camila Sanches Navarro 1,2, Willian Magalhães 2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil sanchesnavarro@gmail.com wmagalhaes@unipar.br

Leia mais

Atualizando do Windows XP para o Windows 7

Atualizando do Windows XP para o Windows 7 Atualizando do Windows XP para o Windows 7 Atualizar o seu PC do Windows XP para o Windows 7 requer uma instalação personalizada, que não preserva seus programas, arquivos ou configurações. Às vezes, ela

Leia mais

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO 1 ÍNDICE 1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO... 3 1.1 REQUISITOS BASICOS DE SOFTWARE... 3 1.2 REQUISITOS BASICOS DE HARDWARE... 3 2 EXECUTANDO O INSTALADOR... 3 2.1 PASSO 01... 3 2.2 PASSO

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

Manual. Pedido Eletrônico

Manual. Pedido Eletrônico Manual Pedido Eletrônico ÍNDICE 1. Download... 3 2. Instalação... 4 3. Sistema de Digitação SantaCruz... 8 3.1. Configuração... 8 4. Utilização do Sistema Digitação SantaCruz... 11 4.1. Atualizar cadastros...11

Leia mais

DESENVOLVIMENTO DE SOFTWARE

DESENVOLVIMENTO DE SOFTWARE VARIAÁ VEL Antes de iniciarmos os comandos referentes a Banco de Dados, precisamos de uma breve descrição técnica sobre Variáveis que serão uma constante em programação seja qual for sua forma de leitura.

Leia mais

M a n u a l d o R e c u r s o Q m o n i t o r

M a n u a l d o R e c u r s o Q m o n i t o r M a n u a l d o R e c u r s o Q m o n i t o r i t i l advanced Todos os direitos reservados à Constat. Uso autorizado mediante licenciamento Qualitor Porto Alegre RS Av. Ceará, 1652 São João 90240-512

Leia mais