1. Configurando o Hibernate para ser usado.

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

Download "1. Configurando o Hibernate para ser usado."

Transcrição

1 1. Configurando o Hibernate para ser usado. Config. 1 Configuration cfg = new Configuration().addFile("Vertex.hbm.xml").addFile("Edge.hbm.xml"); Config. 2 Configuration cfg = new Configuration().addClass(eg.Vertex.class).addClass(eg.Edge.class); Config. 3 Properties props = new Properties();... Configuration cfg = new Configuration().addClass(eg.Vertex.class).addClass(eg.Edge.class).setProperties(props); Método.addFile(<Arquivo>) Adiciona o arquivo.hbm.xml que contém o mapeamento da classe para realização da persistência na configuração do hibernate Médodo.addClass(<arquivo.class>) Adiciona a classe do objeto a ser instanciado, porém é necessário o arquivo.hbm.xml que comtém o mapeamento da classe para realização da persistência. Método.setProperties(<arquivo de propriedades>) Define as propriedades de conexão do banco de dados pelo arquivo de propriedades. 2. Obtendo sessão, abrindo e fechando conexão no hibernate * Para criar uma sessão use: SessionFactory factory = cfg.buildsessionfactory(); onde cfg é um objeto do tipo Configuration * Para abrir uma seção * Verificar se a sessão foi aberta boolean session.isopen(); * Fechando uma conexão session.close();

2 3. Transações * Para iniciar uma transação Transaction transaction = session.begintransaction(); * Para comitar uma transação void transaction.commit(); * Para cancelar uma transação (Rollback) void transaction.rollback(); Atenção: Para salvar um registro você deve usar uma transação e dar um commit, ou usar o método abaixo (testei com o IB, e não deu muito certo) void session.flush(); Teoricamente o session.flush() limpa o buffer da sessão e confirma a gravação das alterações. 4. Gravando, Atualizando, Excluindo e Recuperando registros (CERA) 4.1. Gravando um registro session.save(<objeto_tabela>); 4.2. Atualizando um registro session.update(<objeto_tabela>); 4.3. Excluindo um registro session.delete(<objeto_tabela>); 4.4. Recuperando um registro <classe> <variável> = (<classe>)session.load(<classe>.class, <valor da pk>); Exemplo: Amigo amigo = (Amigo)session.load(Amigo.class, 12); 4.5. Recuperando uma lista de registros java.util.list lista = session.find(string query); java.util.list lista = session.find(string query, Object[] value, Type tipo); java.util.list lista = session.find(string query, Object value, Type tipo); * query --> string contendo a consulta * value --> Objeto (podendo ser um array) contendo os valores para? (? - parametros no JDBC) * tipo --> Tipo de dados do Hibernate (Hibernate.STRING, Hibernate.INTEGER)

3 Exemplo de condições (linguagem de consulta do hibernate) Exemplo 1 String stquery = select mate from Cat as cat join cat.mate as mate + where cat.name =? ; List lista = session.find(stquery, O GATO,Hibernate.STRING); Exemplo 2 String stquery = from Amigo as amigo where amigo.nome = FULANO ; List amigo = session.find(stquery); *** a linguagem é igual ao SQL Ansi Criando consultas com a interface Query 5.1. Criando uma query: Query q = sess.createquery("from Amigo amigo"); //Cria a consulta List amigo = q.list(); //Retorna uma lista dos resultados 5.2. Criando uma query parametrizada /* parametro nomeado (preferencial) */ Query q = sess.createquery("from Amigo amigo where" + "amigo.nome = :name"); q.setstring("name", "Jose"); Iterator amigo = q.iterate(); or List amigo = g.list(); //Cria a query //Define valor do parametro //Recupera a lista de reg. /* parametro posicionado */ Query q = sess.createquery("from Amigo amigo where" + "amigo.nome =?"); //Cria a query q.setstring(0, "Jose"); //Define valor do parametro Iterator amigo = q.iterate(); or List amigo = g.list(); //Recupera a lista de reg. /* lista de parametros */ List params = new ArrayList(); params.add("jose"); params.add("maria"); Query q = sess.createquery("from Amigo amigo where" + "amigo.nome in (:nameslist)"); q.setparameterlist("nameslist", params); //Define valor da lista de parametros List amigo = g.list(); //Recupera a lista de reg. public Query createquery(string querystring) throws HibernateException Parameters: querystring - String contendo a a consulta do hibernate

4 5.3. Consultas em SQL nativo use createsqlquery(). List amigo = session.createsqlquery( "SELECT {amigo.*} FROM Amigo AS {amigo} WHERE amigo.nome = 'Jose'", "amigo", Amigo.class).list(); String sql = "select cat.originalid as {cat.id}, cat.mateid as {cat.mate}, " + " cat.sex as {cat.sex}, cat.weight " + " from cat_log cat where {cat.mate} = :catid" List loggedcats = session.createsqlquery(sql, "cat", Cat.class).setLong("catId", catid).list(); * o {cat.id} representa a propriedade da classe que representa o campo. * o {amigo.*} diz que todos os campos da tabela amigo, tem o mesmo nome das propriedades da classe Amigo. public Query createsqlquery (String sql, String returnalias, Class returnclass) Parameters: sql - consult em SQL returnalias - alias da tabela entre { } dentro do SQL que representa a classe. returnclass - Classe de retorno dos dados da consulta. public Query createsqlquery (String sql, String[] returnaliases, Class[] returnclasses) Parameters: sql - consult em SQL returnaliases - conjunto de alias da tabela entre { } dentro do SQL que representa a classe. returnclasses - conjunto de classes de retorno dos dados da consulta Filtrando coleções (Collection session.filter();) Aplica um filtro em uma coleção persistente. Um filtro é uma consulta do Hibernate. Collection blackkittens = session.filter(pk.getkittens(), "where this.color =?", Color.BLACK, Hibernate.enum(Color.class)); public Collection filter(object collection, String filter) throws HibernateException Parameters: collection - a persistent collection to filter filter - a filter query string public Collection filter (Object collection, String filter, Object value, Type type) thows HibernateException Parameters: collection - a persistent collection to filter filter - a filter query string value - a value to be witten to a "?" placeholder in the query string

5 type - the hibernate type of value public Collection filter (Object collection, String filter, Object[] values, Type[] types) thows HibernateException Parameters: collection - a persistent collection to filter filter - a filter query string values - a list of values to be written to "?" placeholders in the query types - a list of Hibernate types of the values 6. Arquivo de Configuração (.hbm.xml) 6.1. Declaração do Mapeamento. Exemplo <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 2.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> <hibernate-mapping package="eg"> <class name="cat" table="cats" discriminator-value="c"> <id name="id" column="uid" type="long"> <generator class="hilo" </id> <discriminator column="subclass" type="character" <property name="birthdate" type="date" <property name="color" not-null="true" <property name="sex" not-null="true" update="false" <property name="weight" <many-to-one name="mate" column="mate_id" <set name="kittens"> <key column="mother_id" <one-to-many class="cat" </set> <subclass name="domesticcat" discriminator-value="d"> <property name="name" type="string" </subclass> </class> <class name="dog"> <!-- mapping for Dog could go here --> </class> </hibernate-mapping> hibernate-mapping <hibernate-mapping schema="schemaname" (1) default-cascade="none save-update" (2) auto-import="true false" (3) package="package.name" (4) 1. schema (optional): Nome do schema do database. 2. default-cascade (optional - defaults to none): Estilo cascata (cascade style) padrão. 3. auto-import (optional - defaults to true): especifica se pode usar um nome de classe (definidas neste mapeamento) não adequado na linguagem de consulta. 4. package (optional): Especifica um prefixo do pacote para assumir um nome de classe não qualificado no documento de mapeamento.

6 class Declaração da classe persistente use class <class name="classname"(1) table="tablename (2) discriminator-value="discriminator_value"(3) mutable="true false (4) schema="owner" (5) proxy="proxyinterface" (6) dynamic-update="true false"(7) dynamic-insert="true false"(8) select-before-update="true false"(9) polymorphism="implicit explicit"(10) where="arbitrary sql where condition"(11) persister="persisterclass"(12) batch-size="n"(13) optimistic-lock="none version dirty all"(14) lazy="true false"(15) 1. name: nome completo e qualificado de uma classe Java de uma classe ou interface persistente. 2. table: Nome da tabela no banco de dados. 3. discriminator-value (opcional - padrão para o nome da classe): Um valor para distinguir subclasses individuais. Usado para comportamento polimorfo. Aceita valores inclusive null e not null. 4. mutable (opcional, padrão true): Especifica se a instancia da classe é ou não mutante. 5. schema (opcional): Sobrepõe o nome do Schema specificado no elemento raíz (<hibernate-mapping>). 6. proxy (opcional): Especifica uma interface para uso de inicialização de proxies lentos. Você possivelmente especifica o nome da propria classe. 7. dynamic-update (opcional, padrão false): Especifica que o SQL de UPDATE Somente será gerado em runtime e contendo apenas as colunas que tiveram seus dados alterados. 8. dynamic-insert (opcional, padrão false): Especifica que o SQL de INSERT Somente será gerado em runtime e conterá apenas os valores das colunas com valores diferentes de null. 9. select-before-update (opcional, padrão false): Especifica se o Hibernate deverá executar um SQL para atualizar os registros para ter certeza de que o objeto foi atualizado. 10.polymorphism (opcional, padrão implicit): Determina se será usado uma consulta polimorfa implicita ou explicita. 11.where (opcional) especifica com uma clausula WHERE, uma condição para trazer os objetos desta classe. 12.persister (opcional): Especifica uma ClassPersister customizada. 13.batch-size (opcional, padrão 1) especifica um batch size (tamanho do lote) para trazer instancias desta classe. 14.optimistic-lock (opcional, padrão version): determina a estratégia otimista de locking de registro. 15.lazy (opcional): Definindo lazy="true" is é uma nome curto equivalente para especificar o nome da própria classe para uma interface de proxy. Estas definições são também aceitas na seção <subclass> que realizam a persistência de classes internas (inner class).

7 id Definição da chave primária da classe (tabela) <id name="propertyname"(1) type="typename"(2) column="column_name"(3) unsaved-value="any none null id_value"(4) access="field property ClassName">(5) <generator class="generatorclass" </id> name (opcional): O nome para identificar a propriedade. type (opcional): Um nome apra indicar o tipo no Hibernate. column (opcional - padrão o nome da propriedade): O nome da coluna de chave primaria. unsaved-value (opcional - padrão null): Uma uma valor para a propridade para indicar uma nova instancia cujo o valor não for definido. access (opcional - defaults to property): Estratégia necessária para o hibernate acessar o valor da propriedade. O <composite-id> é uma alterantiva para tabelas com chaves compostas, porém é fortemente desencorajada o seu uso, porém pode se fazer necessário o seu uso generator Elemento filho utilizado para gerar identificadores unicos para instancias das classes persistentes. <id name="id" type="long" column="uid" unsaved-value="0"> <generator class="net.sf.hibernate.id.tablehilogenerator"> <param name="table">uid_table</param> <param name="column">next_hi_value_column</param> </generator> </id> increment - gera identificadores do tipo long, short ou int este é unico somente em outro processo de inserção de dados na mesma tabela. Não use em um cluster. identity - suporte às colunas identificadas (identity) no DB2, MySQL, MS SQL Server, Sybase e HypersonicSQL. O retorno é identificado como tipo long, short ou int. sequence - usa a sequencia (sequence) do DB2, PostgreSQL, Oracle, SAP DB, McKoi or um generator no Interbase. O retorno do identificador é do tipo long, short ou int hilo - usa um algoritimo hi/lo para gerar um eficiente identificador do tipo long, short ou int, dado a tabela e a coluna (por default hibernate_unique_key e next respectivamente) para uma fonte de valores altos. O algoritimo hi/lo gera identificadores que são unicos somente para uma base de dados particular. Não use este generator com conexões inscritas com JTA ou com uma user-supplied connection. seqhilo - usa algoritimo hi/lo para gerar um eficiente identificador do tipo long, short or int, dado a tabela e o nome do database sequence. uuid.hex - usas um algoritimo de 128-bit UUID para gerar identificadores do tipo string, unicos na rede (o endereço IP é usado). O UUID é codificado em uma string de digitos hexadecimais de 32 digitos de tamanho. uuid.string - usa o mesmo algoritimo UUID. O UUID é codificado em uma string de 16 caracteres ASCII. Não usar com o PostgreSQL. native - Pega o identity, sequence ou hilo dependendo da capacidade do database.

8 assigned - a aplicação define o identificador para o objeto antes do save() ser chamado. foreign - usa o identificador de outro objeto associado. Comumente usado em conjunto com uma chave primária de uma associação <one-to-one> composite-id Exemplo 1 <composite-id name="propertyname" class="classname" unsaved-value="any none" access="field property ClassName"> <key-property name="propertyname" type="typename" column="column_name" <key-many-to-one name="propertyname class="classname" column="column_name"... </composite-id> Exemplo 2 <composite-id> <key-property name="medicarenumber" <key-property name="dependent" </composite-id> name (opcional): Um propriedade do tipo de componente para passar o identificador composto. class (opcional - padrão o tipo de propriedade determinado para reflecção (reflection)): A classe componente usada para o identificador composto. unsaved-value (opcional - padrão none): indica a instancia transiente necessária para uma nova instanciação, se definido para any timestamp (opcional) <timestamp column="timestamp_column"(1) name="propertyname"(2) access="field property ClassName"(3) unsaved-value="null undefined"(4) column (opcional - padrão o nome da propriedade): O nome de uma coluna proprietaria do TimeStamp. name: O nome de um estilo de propriedade do JavaBeans do tipo Date or Timestamp de uma classe persistente. access (opcional - padrão property): A estratégia do Hibernate necessária para uso no acesso ao valor da propriedade. unsaved-value (opcional - padrão null): Um versão do valor da propriedade para indicar se uma instancia foi recentemente instanciada (unsaved) property A tag <property> define a persistencia da classe no estilo de propriedade JavaBeans. <property name="propertyname" (1) column="column_name"(2) type="typename"(3) update="true false"(4) insert="true false"(4) formula="arbitrary SQL expression"(5) access="field property ClassName"(6) 1. name: o nome da propriedade, com uma letra inicial em minuscula. 2. column (opcional - padrão o nome da propriedade): o nome da coluna da tabela do banco de dados mapeado.

9 3. type (opcional): um nome para indicar o tipo no Hibernate. 4. update, insert (opcional - padrão true): especifições para as colunas mapeadas que necessitam ser incluidas no enunciado do SQL UPDATE e/ou INSERT. Definindo ambos para false permite uma propriedade puramente derivada do qual o valor é inicializado à alguma outra propriedade mapeada para a mesma coluna ou por uma trigger ou outra aplicação. 5. formula (opcional): uma expressão SQL para definir o valor para uma propriedade computed. Propriedade Computed não tem uma coluna mapeada pertencente a ele. 6. access (opcional - padrão property): A estratégia do Hibernate necessária acessar o valor da propriedade many-to-one Para definir uma associação com outras classe persistente use a tag <many_to_one>. No modelo relacional é a associação many-to-one. <many-to-one name="propertyname"(1) column="column_name"(2) class="classname"(3) cascade="all none save-update delete"(4) outer-join="true false auto"(5) update="true false"(6) insert="true false"(6) property-ref="propertynamefromassociatedclass"(7) access="field property ClassName"(8) 1. name: O nome da propriedade. 2. column (opcional): O nome da coluna. 3. class (opcional - padrão o tipo da propriedade determinada para reflexão): O nome da classe associativa. 4. cascade (opcional): Especifica quais operações serão realizadas para cascatear a partir do objeto pai para o objeto associado. 5. outer-join (opcional - padrão auto): habilita recuperação de outer-join para esta associação quando definido hibernate.use_outer_join. 6. update, insert (opcional - padrão true) especifica para a coluna mapeada se será incluido o enunciado do SQL de UPDATE e/ou INSERT. Definindo ambos para false permite uma associação pura com valor inicializado a partir da mesma propriedade para o mapa da mesma coluna ou por uma trigger ou outra aplicação. 7. property-ref: (opcional) Nome de uma propriedade da classe associada para ligação atravéz de uma chave estrangeira. Se na for especificado, a chave primária será usada para associar a classe. 8. access (opcional - padrão property): Estratégia usada pelo Hibernate no acesso ao valor da propriedade. Uma declaração simples de <many-to-one>: <many-to-one name="product" class="product" column="product_id" one-to-one Para relacionamentos um-para-um. <one-to-one name="propertyname" (1) class="classname" (2) cascade="all none save-update delete" (3) constrained="true false" (4) outer-join="true false auto" (5) property-ref="propertynamefromassociatedclass" (6) access="field property ClassName" (7) 1. name: O nome da propriedade. 2. class (opcional - padrão o tipo da propriedade determinado para reflexão): O nome da classe associada. 3. cascade (opcional) especifica para quais operações serão cascateadas para do objeto pai do objeto associado. 4. constrained (opcional) especifica que a constraint de chave estrangeira será a chave primaria da tabela

10 mapeada referenciando a tabela da classe associativa. Esta opção afeta a ordem em que save() e delete() serão cascateada (e é além disso é usada na ferramenta de exportação do schema). 5. outer-join (opcional - padrão auto): habilita recuperação de outer-join para a associação que o hibernate.use_outer_join definir 6. property-ref: (opcional) O nome da propriedade da classe associada que é ligada com a chave primária desta classe. Se não especificado, a chave primária da classe associada será usada. 7. access (opcional - padrão property): A estratégia do Hibernate que será usada para acessar o valor da propriedade. Para uma associação pela chave primária, adicionando o seguinte mapeamento para Employee and Person, respectivamente. <one-to-one name="person" class="person" <one-to-one name="employee" class="employee" constrained="true" No caso anterior, a associação das classes será feita pela chave primária da tabela que foi associada, no caso chave primária da tabela Person e Employee subclass <subclass name="classname" (1) discriminator-value="discriminator_value" (2) proxy="proxyinterface" (3) lazy="true false" (4) dynamic-update="true false" dynamic-insert="true false"> <property </subclass> name: Nome qualificado completo da subclass. discriminator-value (opcional - padrão o nome da classe): Um valor que distingue uma subclasse individual. proxy (opcional): Especifica uma classe ou interface para ser usada em iniciar proxies. lazy (opcional): Definindo lazy="true" é um atalho equivalente para especificar o nome de uma classe para si próprio para a interface proxy joined-subclass Alterantivamente, uma subclasse para persistencia de uma tabela (estratégia de mapeamento table-persubclass) é declarada usando o elemento <joined-subclass>. <joined-subclass name="classname" (1) proxy="proxyinterface" (2) lazy="true false" (3) dynamic-update="true false" dynamic-insert="true false"> <key... > <property </subclass> name: O nome completo qualificado da classe da subclasse. proxy (opcional): Especifica uma classe ou interface para iniciar o uso de proxies. 3. lazy (opcional): Definindo lazy="true" o um atalho equivalente especificado no nome da classe será usado para em uma interface proxy.

11 import Suponha que sua aplicação tenha duas classes persistentes com o mesmo nome, e você não que especificar o nome qualificado completo (package) nas consultas do Hibernate. <import class="java.lang.object" rename="universe" <import class="classname" (1) rename="shortname" (2) 1. class: O nome completo qualificado da classe de qualquer classe Java. 2. rename (opcional - padrão o nome não qualificado da classe) : Um nome para ser usado na linguagem de consulta. 7. Hibernate Types integer, long, short, float, double, character, byte, boolean, yes_no, true_false Tipos primitivos mapeados para Java ou cobertura da classe para o tipo da coluna do SQL apropriada. boolean, yes_no e true_false are são todos alternativos codificando para um Java boolean ou java.lang.boolean. string Um tipo mapeado do java.lang.string para VARCHAR (ou Oracle VARCHAR2). date, time, timestamp Tipo mapeado a partir de java.util.date and e subclasses para tipo SQL DATE, TIME e TIMESTAMP (ou equivalente). calendar, calendar_date Tipo mapeado de java.util.calendar para tipos SQL TIMESTAMP e DATE (ou equivalente). big_decimal Um tipo mapeado de java.math.bigdecimal para NUMERIC (ou Oracle NUMBER). locale, timezone, currency Tipo mapeado de java.util.locale, java.util.timezone e java.util.currency para VARCHAR (ou Oracle VARCHAR2). Instancias de Locale e Currency são mapeada para os codigos ISO. Instancias de TimeZone são mepeadas para o mesmo ID. class Um tipo mapeado de java.lang.class para VARCHAR (ou Oracle VARCHAR2). Uma Class é mapeada para o nome completo qualificado. binary Array de mapa de byte para um apropriado tipo binário do SQL. text Mapea Strings longas do Java para um tipo SQL CLOB ou TEXT. serializable

12 Mapea tipo Java serializable para um tipo binário do SQL apropriado. Voce além disso pode indicar o tipo Hibernate serializable com o nome de uma classe serializable do Java ou interface para fazer notdefault para um tipo basico ou implementação PersistentEnum. clob, blob Tipo mapeados para a classe do JDBC java.sql.clob e java.sql.blob. Estes tipos talvez sejam inconvenientes para algumas aplicações, desde que o os objetos blob ou o clob não sejam reutilizados fora de uma transação. 8. Mapeando Coleções

Cascateamento...31 Usando o cascateamento para update()...32 11.Hibernate Quary Language (HQL)...33 11.1 Clausula FROM...33 Associações e joins...

Cascateamento...31 Usando o cascateamento para update()...32 11.Hibernate Quary Language (HQL)...33 11.1 Clausula FROM...33 Associações e joins... Índice geral PREFÁCIO...3 1.Introdução...4 2.Arquitetura...4 3.Configuração da SessionFactory...6 3.1.Obtendo objetos da classe Configuration,SessionFactory e Session...7 4.Mapeamento dos Objetos para

Leia mais

Curso de Java. Acesso a banco de dados através do Hibernate. Todos os direitos reservados Klais

Curso de Java. Acesso a banco de dados através do Hibernate. Todos os direitos reservados Klais Curso de Java Acesso a banco de dados através do Hibernate Todos os direitos reservados Klais Motivação Java é uma linguagem orientada a objetos: Numa aplicação, o uso de objetos é um recurso importante

Leia mais

Persistência de dados com o

Persistência de dados com o Persistência de dados com o Faculdade Zacarias de Góes Sistemas de Informação Linguagem de Programação Orientada a Objetos 1 INDICE 1. INTRODUÇÃO AO HIBERNATE 2 1.1. MAPEAMENTO OBJETO-RELACIONAL 2 1.2.

Leia mais

Aula 2 - Revisão de JPA (Java Persistence API)

Aula 2 - Revisão de JPA (Java Persistence API) Aula 2 - Revisão de JPA (Java Persistence API) Professor: Ricardo Luis dos Santos IFSUL 2015 Tabela para Revisão Assunto (JPA) Interesse? 1 Vantagens e Desvantagens 4 2 Principais Conceitos 7 3 Anotações

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

Mapeamento Lógico/Relacional com JPA

Mapeamento Lógico/Relacional com JPA Mapeamento Lógico/Relacional com JPA Elaine Quintino da Silva Doutora em Ciência da Computação pelo ICMC-USP/São Carlos Analista de Sistemas UOL PagSeguro Instrutora Globalcode Agenda! Persistência de

Leia mais

Resolvendo objeto-relacional impedance mismatch com hibernate

Resolvendo objeto-relacional impedance mismatch com hibernate Resolvendo objeto-relacional impedance mismatch com hibernate August 7, 2013 Sumário I 1 Introdução 2 3 4 Sumário II 5 Contexto Mapeamento Objeto-Relacional (ORM) é uma técnica de programação para converter

Leia mais

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix

Leia mais

Aula 2 - Revisão de JPA (Java Persistence API)

Aula 2 - Revisão de JPA (Java Persistence API) Aula 2 - Revisão de JPA (Java Persistence API) Professor: Ricardo Luis dos Santos IFSUL 2015 Tabela para Revisão Assunto (JPA) Interesse? 1 Vantagens e Desvantagens 4 2 Principais Conceitos 7 3 Anotações

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

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Curso: Engenharia de Software Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 9 Mapeamento em JPA Introdução O mapeamento objeto-relacional

Leia mais

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. JDBC - Java Database Connectivity A,L,F,M

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. JDBC - Java Database Connectivity A,L,F,M JAVA Marcio de Carvalho Victorino 1 JDBC - Java Database Connectivity 2 1 JDBC conceito JDBC é uma API (Application Program Interface) para acesso a SGBD s (Sistemas Gerenciadores de Banco de Dados) relacionais

Leia mais

Hibernate. Mapeamento Objeto-Relacional. Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior

Hibernate. Mapeamento Objeto-Relacional. Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior Hibernate Mapeamento Objeto-Relacional Baseado nas notas de aula de João Dalyson e Raphaela Galhardo Fernandes Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior Objetivos Aprender MOR usando Hibernate

Leia mais

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011

Banco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011 Banco de Dados I Aula 12 - Prof. Bruno Moreno 04/10/2011 Plano de Aula SQL Definição Histórico SQL e sublinguagens Definição de dados (DDL) CREATE Restrições básicas em SQL ALTER DROP 08:20 Definição de

Leia mais

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix Ingress SQL

Leia mais

Parte II Persistência entre Modelos de Dados

Parte II Persistência entre Modelos de Dados Parte II Persistência entre Modelos de Dados Clodis Boscarioli Agenda: Hibernate Introdução; Configurações; Mapeamento com XML; Exemplos; Associações: 1-n; n-1; n-n; 1-1. Hibernate - Introdução O Hibernate

Leia mais

Introdução ao Hibernate 3

Introdução ao Hibernate 3 Introdução ao Hibernate 3 Maurício Linhares Mapeie o seu modelo de objetos diretamente para o banco de dados, de uma forma simples e se livrando de vez da SQL O que é o Hibernate? O Hibernate é uma ferramenta

Leia mais

Introdução à JPA-Java Persistence API

Introdução à JPA-Java Persistence API Introdução à JPA-Java Persistence API Prof. Pasteur Ottoni de Miranda Jr. DCC PUC Minas www.pasteurjr.blogspot.com 1-Entidades São objetos de domínio de problema persistentes. Representam uma tabela em

Leia mais

Acesso a Bancos de Dados (JDBC) Autor: Cleyton Maciel (clayton.maciel@ifrn.edu.br) Adaptação: Pedro Baesse (pedro.baesse@ifrn.edu.

Acesso a Bancos de Dados (JDBC) Autor: Cleyton Maciel (clayton.maciel@ifrn.edu.br) Adaptação: Pedro Baesse (pedro.baesse@ifrn.edu. Acesso a Bancos de Dados (JDBC) Autor: Cleyton Maciel (clayton.maciel@ifrn.edu.br) Adaptação: Pedro Baesse (pedro.baesse@ifrn.edu.br) JDBC Conceito Tipos Transações Tipos SQL e JAVA Conexão JDBC Implementação

Leia mais

Hibernate. Mapeamento O/R Marcio Aguiar Ribeiro aguiar.marcio@gmail.com

Hibernate. Mapeamento O/R Marcio Aguiar Ribeiro aguiar.marcio@gmail.com Hibernate Mapeamento O/R Marcio Aguiar Ribeiro aguiar.marcio@gmail.com Hibernate O que é? Ferramenta para mapeamento O/R em Java Uma das mais difundidas Transparência Independência quanto ao tipo de base

Leia mais

Introdução ao SQL. O que é SQL?

Introdução ao SQL. O que é SQL? Introdução ao SQL 1 O que é SQL? Inicialmente chamada de Sequel, SQL (Structured Query Language), é a linguagem padrão utilizada para comunicar-se com um banco de dados relacional. A versão original foi

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

SQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL

SQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL SQL TGD/JMB 1 Projecto de Bases de Dados Linguagem SQL SQL TGD/JMB 2 O que é o SQL? SQL ("ess-que-el") significa Structured Query Language. É uma linguagem standard (universal) para comunicação com sistemas

Leia mais

Aula 4. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com)

Aula 4. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Persistência com JDBC e JPA Aula 4 Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) A sabedoria não se transmite, é preciso que nós a descubramos fazendo uma caminhada que ninguém

Leia mais

Comandos de Manipulação

Comandos de Manipulação SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 2 INTERAÇÃO COM O BANCO DE DADOS AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,

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

Java Persistence API. Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações

Java Persistence API. Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações Java Persistence API Entity Entity Campos e Propriedades Entity Chaves Primárias Entity Associações Entity Manager Entity Manager API Java Persistence Query Language (JPQL) Persistence Units 1 Java Persistence

Leia mais

Persistência de Dados em Java com JPA e Toplink

Persistência de Dados em Java com JPA e Toplink Persistência de Dados em Java com JPA e Toplink Vinicius Teixeira Dallacqua Curso de Tecnologia em Sistemas para Internet Instituto Federal de Educação, Ciência e Tecnologia - IFTO AE 310 Sul, Avenida

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

SQL - Banco de Dados. Disciplina: Banco de Dados. Professor: José Antônio. José Antônio - CEFET-RN 23/09/2015

SQL - Banco de Dados. Disciplina: Banco de Dados. Professor: José Antônio. José Antônio - CEFET-RN 23/09/2015 SQL - Banco de Dados 1 Disciplina: Banco de Dados Professor: José Antônio 2 Tópicos de discussão Criando um banco de dados Incluindo, atualizando e excluindo linhas nas tabelas Pesquisa básica em tabelas

Leia mais

JPA (Java Persistence API) Marcos Kalinowski (kalinowski@ic.uff.br)

JPA (Java Persistence API) Marcos Kalinowski (kalinowski@ic.uff.br) JPA (Java Persistence API) (kalinowski@ic.uff.br) Agenda Conceitos básicos do JPA Mapeamento objeto relacional utilizando JPA Utilizando JPA para a persistência na prática EntityManager JPQL (Java Persistence

Leia mais

Prof. Carlos Majer Aplicações Corporativas UNICID

Prof. Carlos Majer Aplicações Corporativas UNICID Este material pertence a Carlos A. Majer, Professor da Unidade Curricular: Aplicações Corporativas da Universidade Cidade de São Paulo UNICID Licença de Uso Este trabalho está licenciado sob uma Licença

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

HIBERNATE Criando um projeto em Java + Hibernate do zero

HIBERNATE Criando um projeto em Java + Hibernate do zero HIBERNATE Criando um projeto em Java + Hibernate do zero SUMÁRIO 1 Instalação do NetBeans 2 Instalação do Java Development Kit (JDK) 3 Criar projeto no NetBeans 4 O arquivo hibernate.cfg.xml 5 Criar as

Leia mais

RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO

RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO Revista Eletrônica da Faculdade Metodista Granbery http://re.granbery.edu.br - ISSN 1981 0377 Curso de Sistemas de Informação - N. 10, JAN/JUN 2011 RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PHP INTEGRAÇÃO COM MYSQL PARTE 1 INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira leonardo@estudandoti.com.br Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança

Leia mais

Criando e executando consultas. Formas de criar consultas

Criando e executando consultas. Formas de criar consultas Criando e executando consultas Formas de criar consultas 1 Formas de consultas Hibernate Query Language (HQL), e um subconjunto do padrão JPA QL (Java Persistence API Query Language : session.createquery("from

Leia mais

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável. SQL (Structured Query Language) SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável. Além de permitir a realização de consultas, SQL possibilita: definição

Leia mais

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 02 AT02 Diversos I 1 Indice ESQUEMAS NO BANCO DE DADOS... 3 CRIANDO SCHEMA... 3 CRIANDO TABELA EM DETERMINADO ESQUEMA... 4 NOÇÕES BÁSICAS SOBRE CRIAÇÃO E MODIFICAÇÃO

Leia mais

Banco de dados. Linguagens de Banco de Dados II. Wedson Quintanilha da Silva - www.assembla.com/spaces/objetivobd/documents

Banco de dados. Linguagens de Banco de Dados II. Wedson Quintanilha da Silva - www.assembla.com/spaces/objetivobd/documents Banco de dados Linguagens de Banco de Dados II 1 Linguagem de Definição de Dados - DDL Comandos utilizados para criação do esquema de dados; Um DDL permite ao utilizador definir tabelas novas e elementos

Leia mais

SQL - Criação de Tabelas

SQL - Criação de Tabelas SQL - Criação de Tabelas André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) SQL - Criação de Tabelas February 24, 2012 1 / 25 Sumário 1 Introdução 2 Tabelas

Leia mais

Desmistificando o Hibernate Envers em 10 passos

Desmistificando o Hibernate Envers em 10 passos _envers Desmistificando o Hibernate Envers em 10 passos Auditoria de dados? Registro de Log? Trilha de auditoria? Descubra como é fácil, através do Hibernate Envers, rastrear o histórico de mudanças e

Leia mais

SuporteNativoa XML no

SuporteNativoa XML no SuporteNativoa XML no Gerenciamento de Dados e Informação Suporte Nativo a XML no Oracle Fernando Fonseca Ana Carolina Robson Fidalgo 2 Oracle & XML Habilita uma fonte confiável para XML Apresenta flexibilidade

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

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita: SQL Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional em Ensino de Ciências

Leia mais

http://www.hibernate.org Fernando Kasten Peinado

http://www.hibernate.org Fernando Kasten Peinado http://www.hibernate.org Fernando Kasten Peinado O que é? Pra que serve? Por que foi criado? Como funciona? Abstrações Importantes? Como começar? (Exemplos) Quais são seus recursos interessantes e como

Leia mais

SQL - Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL

SQL - Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL SQL - Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL Criar uma base de dados (criar um banco de dados) No mysql: create database locadora; No postgresql: createdb locadora Criar

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 2 INTERAÇÃO COM O BANCO DE DADOS AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,

Leia mais

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:

Leia mais

SQL Structured Query Language. SQL Linguagem de Definição de Dados. SQL Structured Query Language. SQL Structured Query Language

SQL Structured Query Language. SQL Linguagem de Definição de Dados. SQL Structured Query Language. SQL Structured Query Language Pós-graduação em Ciência da Computação CCM-202 Sistemas de Banco de Dados SQL Linguagem de Definição de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufabc.edu.br Bloco B - sala 937 2 quadrimestre

Leia mais

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS Exemplos de Scripts SQL (PostgreSQL) Pizzaria 1 2 Criação de BANCO DE DADOS CREATE DATABASE nome_do_banco; CREATE DATABASE pizzaria; Criação de TABELAS SOMENTE COM CHAVE PRIMÁRIA CREATE TABLE nome_da_tabela

Leia mais

Aula 1 Acesso a Banco de Dados

Aula 1 Acesso a Banco de Dados Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores

Leia mais

Linguagem SQL. Comandos Básicos

Linguagem SQL. Comandos Básicos Linguagem SQL Comandos Básicos Caetano Traina Júnior Grupo de Bases de Dados e Imagens Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos caetano@icmc.sc.usp.br Comando

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

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Introdução à Banco de Dados. Nathalia Sautchuk Patrício Introdução à Banco de Dados Nathalia Sautchuk Patrício Histórico Início da computação: dados guardados em arquivos de texto Problemas nesse modelo: redundância não-controlada de dados aplicações devem

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

Oracle PL/SQL Overview

Oracle PL/SQL Overview Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade

Leia mais

O que são Bancos de Dados?

O que são Bancos de Dados? SQL Básico Liojes de Oliveira Carneiro professor.liojes@gmail.com www.professor-liojes.blogspot.com O que são Bancos de Dados? É o software que armazena, organiza, controla, trata e distribui os dados

Leia mais

Tecnologias Java JDBC. Marcio Seiji Oyamada msoyamada@gmail.com

Tecnologias Java JDBC. Marcio Seiji Oyamada msoyamada@gmail.com Tecnologias Java JDBC Marcio Seiji Oyamada msoyamada@gmail.com JDBC JDBC: Java Database Connectivity API Java para acessar dados armazenados em um Banco de Dados Conectar a um banco dados Enviar consultas

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

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br BANCO DE DADOS info 3º ano Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br www.diemesleno.com.br Na última aula estudamos Unidade 4 - Projeto Lógico Normalização; Dicionário de Dados. Arquitetura

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

Programação Orientada a Objetos JDBC Java Database Connectivity

Programação Orientada a Objetos JDBC Java Database Connectivity Especialização em Engenharia de Software Programação Orientada a Objetos JDBC Java Database Connectivity Sérgio Soares scbs@cin.ufpe.br Objetivos Apresentar os conceitos básicos da especificação de Java

Leia mais

JDBC. Java DataBase Connectivity

JDBC. Java DataBase Connectivity JDBC Java DataBase Connectivity JDBC??? Uma API que permite o acesso a virtualmente qualquer fonte de dado tabular a partir de um programa escrito em Java O que é uma uma fonte de dados tabular? acesso

Leia mais

JPA Passo a Passo. Henrique Eduardo M. Oliveira henrique@voffice.com.br. Globalcode Open4Education

JPA Passo a Passo. Henrique Eduardo M. Oliveira henrique@voffice.com.br. Globalcode Open4Education JPA Passo a Passo Henrique Eduardo M. Oliveira henrique@voffice.com.br 1 Palestrante Henrique Eduardo M. Oliveira (henrique@voffice.com.br) > Trabalha: Arquiteto JEE / Instrutor Java > Formação: Ciências

Leia mais

Histórico de revisões

Histórico de revisões Apostila 3 Histórico de revisões Data Versão Descrição Autor 30/09/2011 1.0 Criação da primeira versão HEngholmJr CONTEÚDO Exclusão de registros Consultas por Dados de Resumo Group by / Having Funções

Leia mais

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

Structured Query Language (SQL) Ambiente Simplificado de um SGBD Structured Query Language (SQL) Ambiente Simplificado de um SGBD 2 1 Características dos SGBDs Natureza auto-contida de um sistema de banco de dados: metadados armazenados num catálogo ou dicionário de

Leia mais

MIOLO 2.0 DAO. Ely Edison Matos ely.matos@ufjf.edu.br

MIOLO 2.0 DAO. Ely Edison Matos ely.matos@ufjf.edu.br MIOLO 2.0 DAO Ely Edison Matos ely.matos@ufjf.edu.br versão do documento: 1.3 16/05/2005 Índice DAO - Camada de abstração de acesso a dados...3 Configuração...3 Classes DAO...3 classe Database...5 classe

Leia mais

Structured Query Language (SQL) Aula Prática

Structured Query Language (SQL) Aula Prática Structured Query Language (SQL) Aula Prática Linguagens de SGBD Durante o desenvolvimento do sistema R, pesquisadores da IBM desenvolveram a linguagem SEQUEL, primeira linguagem de acesso para Sistemas

Leia mais

Leonardo Gresta Paulino Murta leomurta@gmail.com

Leonardo Gresta Paulino Murta leomurta@gmail.com Leonardo Gresta Paulino Murta leomurta@gmail.com O Que é JDBC? API de acesso a banco de dados relacional do Java Faz uso do driver provido pelo banco de dados Roda SQL (create, insert, update, etc.) no

Leia mais

SQL DDL Criando Tabelas e Restrições Instituto Militar de Engenharia IME Material extraido parcialmente de notas de aula de Maria Luiza Campos e Arnaldo Vieira Comandos de Definição de Dados Aplicação

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Introdução à Engenharia da Computação. Banco de Dados Professor Machado Introdução à Engenharia da Computação Banco de Dados Professor Machado 1 Sistemas isolados Produção Vendas Compras Banco de Dados Produtos... Banco de Dados Produtos... Banco de Dados Produtos... Desvantagens:

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

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos Objetivos: Criar restrições para atributos, chaves primárias e estrangeiras; Explorar consultas SQL com uso de

Leia mais

BANCO DE DADOS: SQL. Edson Anibal de Macedo Reis Batista. 27 de janeiro de 2010

BANCO DE DADOS: SQL. Edson Anibal de Macedo Reis Batista. 27 de janeiro de 2010 BANCO DE DADOS: SQL UERN - Universidade do Estado do Rio Grande do Norte. Departamento de Ciências da Computação. 27 de janeiro de 2010 índice 1 Introdução 2 3 Introdução SQL - Structured Query Language

Leia mais

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível

Leia mais

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível de independência do

Leia mais

(1,n) venda. (1,1) realizacao. cliente. (0,n) (1,1) contem. produto. Laboratório de Banco de Dados Exercicios

(1,n) venda. (1,1) realizacao. cliente. (0,n) (1,1) contem. produto. Laboratório de Banco de Dados Exercicios Laboratório de Banco de Dados Exercicios Modelo conceitual segundo notação de Peter Chen cliente (1,1) realizacao (1,n) venda (0,n) produto (1,1) contem Modelo conceitual gerado pela CASE Dezign for Database

Leia mais

Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados. Prof. Josenildo Silva jcsilva@ifma.edu.br

Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados. Prof. Josenildo Silva jcsilva@ifma.edu.br Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores

Leia mais

CREATE TABLE AUTOR ( cod_autor int not null primary key, nome_autor varchar (60) )

CREATE TABLE AUTOR ( cod_autor int not null primary key, nome_autor varchar (60) ) TADS Exercício Laboratório I Analise o modelo de banco de dados abaixo: MUSICA FAIXA Codigo_Musica: INTEGER Nome_Musica: VARCHAR(60) Duracao: NUMERIC(6,2) Codigo_Musica: INTEGER (FK) Codigo_CD: INTEGER

Leia mais

Integrando Java com Banco de Dados

Integrando Java com Banco de Dados Especialização em Engenharia de Software Programação Orientada a Objetos JDBC Java Database Connectivity Sérgio Soares scbs@cin.ufpe.br Objetivos Apresentar os conceitos básicos da especificação de Java

Leia mais

BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br BANCO DE DADOS -INTRODUÇÃO AO SQL Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br INTRODUÇÃO AO SQL Ferramentas brmodelo Ferramenta Case PostgreSQL versão 8 ou superior SGBD Em 1986 o American

Leia mais

Aula 5. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com)

Aula 5. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Persistência com JDBC e JPA Aula 5 Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Quem é sábio procura aprender, mas os tolos estão satisfeitos com a sua própria ignorância..

Leia mais

Linguagem SQL (Parte I)

Linguagem SQL (Parte I) Universidade Federal de Sergipe Departamento de Sistemas de Informação Itatech Group Jr Softwares Itabaiana Site: www.itatechjr.com.br E-mail: contato@itatechjr.com.br Linguagem SQL (Parte I) Introdução

Leia mais

Hibernate com Anotações

Hibernate com Anotações Hibernate com Anotações Por: Raphaela Galhardo Fernandes Gleydson de A. Ferreira Lima raphaela@j2eebrasil.com.br, gleydson@j2eebrasil.com.br JavaRN - http://javarn.dev.java.net J2EEBrasil - http://www.j2eebrasil.com.br

Leia mais

SQL SQL BANCO DE DADOS 2. Componentes do SQL (1) Componentes do SQL (2) DDL Criação de banco de dados. Padrões de SQL

SQL SQL BANCO DE DADOS 2. Componentes do SQL (1) Componentes do SQL (2) DDL Criação de banco de dados. Padrões de SQL BANCO DE DADOS 2 SQL (CREATE TABLE, CONSTRAINTS, DELETE, UPDATE e INSERT) Prof. Edson Thizon SQL SQL ( structured query language ) é uma linguagem comercial de definição e manipulação de banco de dados

Leia mais

BD SQL Server. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04

BD SQL Server. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04 BD SQL Server SGBD SQL Server Licenciatura em Engenharia Informática e Computação Bases de Dados 2003/04 BD SQL Server Criação da Ligação ao SGBD Entrar no Microsoft SQL Server / Enterprise Manager Criar

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

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

Programação SQL. Introdução

Programação SQL. Introdução Introdução Principais estruturas duma Base de Dados: Uma BD relacional é constituída por diversas estruturas (ou objectos ) de informação. Podemos destacar: Database: designa a própria BD; Table/Tabela:

Leia mais

Auditoria Avançada de Persistência com Hibernate, JPA e Envers

Auditoria Avançada de Persistência com Hibernate, JPA e Envers a r t i g o José Yoshiriro Ajisaka Ramos (jyoshiriro@gmail.com): bacharel em Sistema de Informação (IESAM). Mestrando em Ciência da Computação (UFPA). Instrutor na Equilibrium Web e na UAB. Engenheiro

Leia mais

TUTORIAL SOBRE A CONSTRUÇÃO DE APLICAÇÕES EMPREGANDO JAVA, HIBERNATE E MySQL

TUTORIAL SOBRE A CONSTRUÇÃO DE APLICAÇÕES EMPREGANDO JAVA, HIBERNATE E MySQL Revista Eletrônica da Faculdade Metodista Granbery http://re.granbery.edu.br - ISSN 1981 0377 Curso de Sistemas de Informação - N. 6, JAN/JUN 2009 TUTORIAL SOBRE A CONSTRUÇÃO DE APLICAÇÕES EMPREGANDO JAVA,

Leia mais

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Manipulação de Banco de Dados com Java Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Acesso a um SGBD Em sistemas mais simples o uso de arquivos pode ser usado mas para aplicações

Leia mais

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais

LINGUAGEM SQL. SQL Server 2008 Comandos iniciais 1 LINGUAGEM SQL SQL Server 2008 Comandos iniciais SQL - STRUCTURED QUERY LANGUAGE Quando os Bancos de Dados Relacionais estavam sendo desenvolvidos, foram criadas linguagens destinadas à sua manipulação.

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

Gerenciamento de um Sistema de

Gerenciamento de um Sistema de SBD Gerenciamento de um Sistema de Banco de Dados Prof. Michel Nobre Muza ua michel.muza@ifsc.edu.br Prof. Marcos Antonio Viana Nascimento Por que é importante: Motivação Participar na organização e no

Leia mais

Descrição Tinyint[(M)] Inteiro pequeno. Varia de 128 até +127

Descrição Tinyint[(M)] Inteiro pequeno. Varia de 128 até +127 Disciplina: Tópicos Especiais em TI PHP Este material foi produzido com base nos livros e documentos citados abaixo, que possuem direitos autorais sobre o conteúdo. Favor adquiri-los para dar continuidade

Leia mais