Hibernate. Raquel Defelippo Rodrigues

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

Download "Hibernate. Raquel Defelippo Rodrigues"

Transcrição

1 Hibernate Raquel Defelipp Rdrigues

2 Hibernate é um framewrk usa persistir bjets Java em s de banc de s relacinais.

3 Pr quê precisams Hibernate? Pr quê precisams Hibernate?

4 Trabalhams cm Mdel Relacinal 1 + N Departament 1 1 Endereç

5 Java + Mdel Relacinal H I B E R N A T E Mdel Relacinal 1 N Departament 1 1 Endereç

6 Java + Mdel Relacinal H I B E R N A T E Mdel Relacinal 1 N Departament 1 1 Endereç O Hibernate éum bjet/relacinal.

7 Mas que é ORM? (Mapeament Objet/Relacinal)

8 ORM ORM é um mei de persistir bjets de um aplicativ Java em s de bancs de s relacinais, de maneira transparente. Hibernate é uma sluçã pen surce de ORM.

9 Onde se lcaliza Hibernate?

10 Arquitetura em camas de prjets OO Cama de Apresentaçã Cama de Regras de Negóci Hibernate Classes de Utilide e Assistente Cama de Persistência Banc de Das

11 Abstraçã SGBD O Hibernate está lcaliza entre JDBC e a aplicaçã. Cas seja precis mur SGBD de sua aplicaçã basta apenas alterar driver usa e sua referência n arquiv hibernate.cfg.xml.

12 Cm é a Arquitetura Hibernate?

13 Arquitetura Hibernate Cama de Negóci Cicl de Vi Tabela de Valiçã Classes de Persistência Interceptr Tip de usuári Cama de Persistência Fábrica de Sessões Sessã Transaçã Cnsulta Cnfiguraçã JNDI JDBC JTA Hibernate API J2EE API

14 Arquitetura Hibernate Cama de Negóci Cicl de Vi Tabela de Valiçã Classes de Persistência Mantém m bjet/relacinal na Interceptr na memória. Permite a criaçã çã Tip de de bjets de usuári Sessã. Cama de Persistência Fábrica de Sessões Sessã Transaçã Cnsulta Cnfiguraçã Respnsáveis pr pr executar perações es de de criaçã, çã, deleçã, çã,, cnsulta e e atualizaçã çã n n BD JNDI JDBC JTA Hibernate API Utiliza cnfigurar Hibernate cnfigurar J2EE API Hibernate

15 Cama de Negóci Cicl de Vi Respnsáveis pr pr realizar a interaçã çã entre s s Arquitetura events Hibernate e e a Hibernate aplicaçã. çã. Classes de Persistência Interceptr Tabela de Valiçã Tip de usuári Cama de Persistência Permite Fábricaa de extensã Sessões s Sessã Transaçã Cnsulta Cnfiguraçã JNDI JDBC JTA Permite a extensã s funcinalides Hibernate Hibernate API J2EE API

16 Arquitetura Hibernate Cama de Negóci Cicl de Vi Tabela de Valiçã Classes de Persistência Interceptr Tip de usuári Cama de Persistência Sã aquelas classes que que implementam as as entides míni de de negócis. Fábrica de Sessões Sessã Transaçã Cnsulta Cnfiguraçã JNDI JDBC JTA Hibernate API J2EE API

17 Arquitetura Hibernate Classes de Persistência O Hibernate trabalha asscian ca banc de s a um POJO. O Hibernate persiste as prpriedes n estil JavaBeans; É ante que, a utilizar Hibernate, ts s bjets persistentes pssuam um identificar e que estes sejam independentes lógica de negóci aplicaçã.

18 Arquitetura Hibernate Esclhas s chaves primárias Chaves primárias naturais, cm pr exempl CPF a Pessa, devem ser evitas. Recmen-se frtemente que as chaves primárias s s sejam sintéticas, u seja, nã pssuam significas de negócis. O Hibernate apresenta váris mecanisms interns a geraçã de chaves primárias. Pr exempl, sequence que mapeia uma seqüência n PstegreSQL.

19 Cm é a instalaçã Hibernate?

20 Pren ambiente Pass 1: Instalaçã SGBD PstegreSQL; Pass 2: Instalaçã IDE Eclipse; Pass 3: Instalaçã Hibernate; Pass 4: Cnfiguraçã Hibernate;

21 Pass 1: Instalaçã PstegreSQL 1. Entre n site 2. Clique em wnlad FTP mirrs Brazil win32 pstegresql zip 3. Descmpacte arquiv baixa 4. Clique cm btã direit em pstegre-8.1.msi e esclha instalar 5. Siga pass a pass 6. Esclha a pçã de Idima Prtuguês 7. Esclha: superusuári admin e senha admin

22 Pass 2: Instalaçã IDE Eclipse 1. Cnsideran que já exista um ambiente prgramaçã em Java devimente instala; 2. Entre n site 3. Clique em wnlads wnlad nw: Eclipse SDK Esclha [Brazil] PUCPR (ftp) 5. Salvar arquiv eclipse-sdk-3.2-win32.zip 6. Descmpactar arquiv eclipse-sdk-3.2- win32.zip

23 Pass 3: Instalaçã Hibernate 1. Entre n site 2. Clique em wnlads Hibernate Cre Dwnlad hibernate zip Curitiba, Brazil Dwnlad 3. Descmpacte arquiv baixa (hibernate zip) 4. Observe que a cumentaçã está lcaliza em hibernate-3.1.3\hibernate-3.1\c\reference\em\html\index.html

24 Pass 4: Cnfiguraçã Hibernate A cnfiguraçã Hibernate será apresenta através de um exempl prátic.

25 Cnfiguraçã Hibernate Exempl 1. Criar banc de s s cm as 3 s:, Departament e Endereç. 2. Cnfigurar Hibernate. 3. Criar s arquivs ORM que relacinam as prpriedes bjet as camps. 4. Criar s arquivs de cnfiguraçã.xml cnten as prpriedes que Hibernate se cnecte a banc de s. 5. Testar que fi feit.

26 Cnfiguraçã Hibernate Exempl 1. Criaçã Banc de Das

27 Cnfiguraçã Hibernate Exempl Banc de Das - s

28 Cnfiguraçã Hibernate Exempl Crian as seqüências usas pelas chaves primárias -- Sequence: universide_id_universide_seq -- DROP SEQUENCE universide_id_universide_seq; CREATE SEQUENCE universide_id_universide_seq INCREMENT 1 MINVALUE 1 MAXVALUE START 2 CACHE 1; ALTER TABLE universide_id_universide_seq OWNER TO "admin";

29 Cnfiguraçã Hibernate Exempl Crian as seqüências usas pelas chaves primárias -- Sequence: universide_id_universide_seq -- DROP SEQUENCE universide_id_universide_seq; CREATE SEQUENCE universide_id_universide_seq INCREMENT 1 MINVALUE 1 MAXVALUE -- Sequence: departament_id_departament_seq START -- 2DROP SEQUENCE departament_id_departament_seq; CACHE CREATE 1; SEQUENCE departament_id_departament_seq ALTER TABLE INCREMENT universide_id_universide_seq 1 OWNER TO "admin"; MINVALUE 1 MAXVALUE START 2 CACHE 1; ALTER TABLE departament_id_departament_seq OWNER TO "admin";

30 Cnfiguraçã Hibernate Exempl Crian as seqüências usas pelas chaves primárias -- Sequence: universide_id_universide_seq -- DROP SEQUENCE universide_id_universide_seq; CREATE SEQUENCE universide_id_universide_seq INCREMENT 1 MINVALUE 1 MAXVALUE -- Sequence: departament_id_departament_seq START -- 2DROP SEQUENCE departament_id_departament_seq; CACHE CREATE 1; SEQUENCE departament_id_departament_seq ALTER TABLE INCREMENT universide_id_universide_seq 1 OWNER TO "admin"; MINVALUE 1 MAXVALUE -- Sequence: enderec_id_enderec_seq START--2 DROP SEQUENCE enderec_id_enderec_seq; CACHECREATE 1; SEQUENCE enderec_id_enderec_seq ALTER TABLE INCREMENT departament_id_departament_seq 1 OWNER TO "admin"; MINVALUE 1 MAXVALUE START 2 CACHE 1; ALTER TABLE enderec_id_enderec_seq OWNER TO "admin";

31 Cnfiguraçã Hibernate Exempl Crian as s -- Table: universide -- DROP TABLE universide; CREATE TABLE universide ( id_universide int4 NOT NULL DEFAULT nextval('universide_id_universide_seq'::regclass), cnpj varchar NOT NULL, raza_scial varchar, tip varchar, num_aluns int4, CONSTRAINT universide_pkey PRIMARY KEY (id_universide), CONSTRAINT universide_cnpj_key UNIQUE(cnpj) ) WITH OIDS; ALTER TABLE universide OWNER TO "admin";

32 Cnfiguraçã Hibernate Exempl Crian as s -- Table: universide -- DROP TABLE universide; CREATE TABLE universide ( id_universide int4 NOT NULL DEFAULT nextval('universide_id_universide_seq'::regclass), cnpj varchar NOT NULL, raza_scial varchar, tip varchar, num_aluns int4, CONSTRAINT universide_pkey PRIMARY KEY (id_universide), -- Table: enderec CONSTRAINT universide_cnpj_key UNIQUE(cnpj) -- DROP TABLE enderec; ) CREATE TABLE enderec WITH OIDS; ( ALTER TABLE universide OWNER TO "admin"; id_enderec int4 NOT NULL DEFAULT nextval('enderec_id_enderec_seq'::regclass), rua varchar, cep varchar, CONSTRAINT enderec_pkey PRIMARY KEY (id_enderec) ) WITH OIDS; ALTER TABLE enderec OWNER TO "admin";

33 Cnfiguraçã Hibernate Exempl Crian as s -- Table: universide -- DROP --TABLE Table: universide; departament CREATE -- TABLE DROP universide TABLE departament; ( CREATE TABLE departament id_universide ( int4 NOT NULL DEFAULT nextval('universide_id_universide_seq'::regclass), id_departament int4 NOT NULL DEFAULT cnpj nextval('departament_id_departament_seq'::regclass), varchar NOT NULL, raza_scial nme varchar, tip varchar, id_universide int4 NOT NULL, num_aluns id_enderec int4, int4, CONSTRAINT CONSTRAINT universide_pkey departament_pkey PRIMARY KEY (id_universide), -- Table: enderec PRIMARY KEY (id_departament), CONSTRAINT CONSTRAINT universide_cnpj_key departament_fk UNIQUE(cnpj) -- DROP TABLE enderec; FOREIGN KEY (id_universide) ) REFERENCES CREATE universide TABLE enderec (id_universide) MATCH SIMPLE WITH OIDS; ON UPDATE ( NO ACTION ON DELETE NO ACTION, ALTER TABLE CONSTRAINT universide departament_fk1 OWNER TO "admin"; id_enderec int4 FOREIGN NOT NULL KEY (id_enderec) DEFAULT REFERENCES nextval('enderec_id_enderec_seq'::regclass), enderec (id_enderec) MATCH SIMPLE ON UPDATE NO rua ACTION varchar, ON DELETE NO ACTION, CONSTRAINT departament_id_enderec_key cep varchar, UNIQUE (id_enderec) ) CONSTRAINT enderec_pkey PRIMARY KEY (id_enderec) WITH OIDS; ) ALTER TABLE departament OWNER TO "admin"; WITH OIDS; ALTER TABLE enderec OWNER TO "admin";

34 Cnfiguraçã Hibernate Exempl 2. Cnfigurar Hibernate

35 Cnfiguraçã Hibernate Exempl Cnfiguraçã Ambiente Crie um diretóri de trabalh chama wrkspace; Crie um pacte chama universides. Esclha: Add external JAR: ar s arquivs.jar de hibernate-3.1.3\hibernate-3.1\lib Add external JAR: ar hibernate3.jar de hibernate-3.1.3\hibernate-3.1

36 Cnfiguraçã Hibernate Exempl Cnfiguraçã Ambiente Crie um pacte br.mdel.bean s arquivs de persistência; Crie um pacte br.testes.hibernate nde ficarã s arquivs de teste; Crie um pacte br.testes.hibernate.persistence nde ficará arquiv HibernateFactry.java; Imprte pstgresql-8.2dev-503.jdbc3.jar, que deve também ser baixa site O arquiv Hibernate.cfg.xml deverá ficar na raiz aplicaçã.

37 Cnfiguraçã Hibernate Exempl 3. Criaçã s Arquivs ORM

38 Cnfiguraçã Hibernate Exempl Arquivs ORM Para ca é necessári a criaçã s arquivs ORM; O primeir arquiv é uma classe de persistência JAVA que deve ter: Um cnstrutr padrã sem arguments Variáveis ca atribut. Ca uma destas variáveis deve pssuir s méts get e set; O segun arquiv pssui a extensã.hbm.xml, e faz entre s atributs s s e as variáveis s classes de persistência JAVA;

39 Cnfiguraçã Hibernate Exempl Arquivs ORM Mapeament s atributs Mapeament s relacinaments

40 Mapeament s Atributs.java package package br.mdel.bean; br.mdel.bean; java.util.hashset; java.util.hashset; java.util.set; java.util.set; / / Classe Classe - - Parte Parte integrante integrante esquema esquema necessari necessari a a utilizaca utilizaca Hibernate Hibernate Junt Junt cm cm universide.hbm.xml universide.hbm.xml faz faz universide universide / / class class / / O O exige exige que que ca ca camp camp seja seja cria cria uma uma variavel variavel tip tip crrespndente crrespndente / / int int id_universide; id_universide; cnpj; cnpj; raza_scial; raza_scial; tip; tip; int int num_aluns; num_aluns;

41 Mapeament s Atributs.java / / O O exige exige que que ca ca variavel variavel existam existam s s mets mets get get e e set set / / getcnpj() getcnpj() cnpj; cnpj; setcnpj( setcnpj( cnpj) cnpj) this.cnpj this.cnpj cnpj; cnpj; int int getid_universide() getid_universide() id_universide; id_universide; setid_universide(int setid_universide(int id_universide) id_universide) this.id_universide this.id_universide id_universide; id_universide; getraza_scial() getraza_scial() raza_scial; raza_scial; setraza_scial( setraza_scial( raza_scial) raza_scial) this.raza_scial this.raza_scial raza_scial; raza_scial; gettip() gettip() tip; tip; settip( settip( tip) tip) this.tip this.tip tip; tip; int int getnum_aluns() getnum_aluns() num_aluns; num_aluns; setnum_aluns(int setnum_aluns(int num_aluns) num_aluns) this.num_aluns this.num_aluns num_aluns; num_aluns;

42 Mapeament s Atributs.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " Nme cmplet classe <hibernate-mapping> <hibernate-mapping> <class <class name"br.mdel.bean." name"br.mdel.bean." table"universide"> table"universide"> Nme Descriçã s atributs Tabela <id <id name"id_universide" name"id_universide" clumn"id_universide" Seqüência clumn"id_universide" cria pel type"integer"> type"integer"> PstgreSQL <generatr <generatr class"sequence"> class"sequence"> <m <m name"sequence">universide_id_universide_seq</m> name"sequence">universide_id_universide_seq</m> </generatr> </generatr> </id> </id> <prperty <prperty name"cnpj" name"cnpj" type"string"/> type"string"/> <prperty <prperty name"raza_scial" name"raza_scial" clumn"raza_scial" clumn"raza_scial" type"string"/> type"string"/> <prperty <prperty name"tip" name"tip" type"string"/> type"string"/> <prperty <prperty name"num_aluns" name"num_aluns" clumn"num_aluns" clumn"num_aluns" type"integer"/> type"integer"/> </class> </class> </hibernate-mapping> </hibernate-mapping> Nme variável na classe Java Nme s atributs na Tip

43 Mapeament s Atributs package package br.mdel.bean; br.mdel.bean; Departament.java br.mdel.bean.; br.mdel.bean.; br.mdel.bean.enderec; br.mdel.bean.enderec; / / Classe Classe Departament Departament - - Parte Parte integrante integrante esquema esquema necessari necessari a a utilizaca utilizaca Hibernate Hibernate Junt Junt cm cm departament.hbm.xml departament.hbm.xml faz faz departament departament / / class class Departament Departament / / O O exige exige que que ca ca camp camp seja seja cria cria uma uma variavel variavel tip tip crrespndente crrespndente / / int int id_departament; id_departament; nme; nme; / / O O exige exige que que ca ca variavel variavel existam existam s s mets mets get get e e set set / / int int getid_departament() getid_departament() id_departament; id_departament; setid_departament(int setid_departament(int id_departament) id_departament) this.id_departament this.id_departament id_departament; id_departament; getnme() getnme() nme; nme; setnme( setnme( nme) nme) this.nme this.nme nme; nme;

44 Mapeament s Atributs Departament.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " <hibernate-mapping> <hibernate-mapping> <class <class name"br.mdel.bean.departament" name"br.mdel.bean.departament" table"departament"> table"departament"> <id <id name"id_departament" name"id_departament" clumn"id_departament" clumn"id_departament" type"integer"> type"integer"> <generatr <generatr class"sequence"> class"sequence"> <m <m name"sequence">departament_id_departament_seq</m> name"sequence">departament_id_departament_seq</m> </generatr> </generatr> </id> </id> <prperty <prperty name"nme" name"nme" type"string"/> type"string"/> </class> </class> </hibernate-mapping> </hibernate-mapping>

45 Mapeament s Atributs Enderec.java package package br.mdel.bean; br.mdel.bean; / / Classe Classe Enderec Enderec - - Parte Parte integrante integrante esquema esquema necessari necessari a a utilizaca utilizaca Hibernate Hibernate Junt Junt cm cm enderec.hbm.xml enderec.hbm.xml faz faz enderec enderec / / class class Enderec Enderec / / O O exige exige que que ca ca camp camp seja seja cria cria uma uma variavel variavel tip tip crrespndente crrespndente / / int int id_enderec; id_enderec; rua; rua; cep; cep;

46 Mapeament s Atributs Enderec.java / / O O exige exige que que ca ca variavel variavel existam existam s s mets mets get get e e set set / / int int getid_enderec() getid_enderec() id_enderec; id_enderec; setid_enderec(int setid_enderec(int id_enderec) id_enderec) this.id_enderec this.id_enderec id_enderec; id_enderec; getrua() getrua() rua; rua; setrua( setrua( rua) rua) this.rua this.rua rua; rua; getcep() getcep() cep; cep; setcep( setcep( cep) cep) this.cep this.cep cep; cep;

47 Mapeament s Atributs Enderec.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " <hibernate-mapping> <hibernate-mapping> <class <class name"br.mdel.bean.enderec" name"br.mdel.bean.enderec" table"enderec"> table"enderec"> <id <id name"id_enderec" name"id_enderec" clumn"id_enderec" clumn"id_enderec" type"integer"> type"integer"> <generatr <generatr class"sequence"> class"sequence"> <m <m name"sequence">enderec_id_enderec_seq</m> name"sequence">enderec_id_enderec_seq</m> </generatr> </generatr> </id> </id> <prperty <prperty name"rua" name"rua" type"string"/> type"string"/> <prperty <prperty name"cep" name"cep" type"string"/> type"string"/> </class> </class> </hibernate-mapping> </hibernate-mapping>

48 Cnfiguraçã Hibernate Exempl Arquivs ORM Mapeament s atributs Mapeament s relacinaments

49 Mapeament s Relacinaments.java package package br.mdel.bean; br.mdel.bean; java.util.hashset; java.util.hashset; java.util.set; java.util.set; / / Classe Classe - - Parte Parte integrante integrante esquema esquema necessari necessari a a utilizaca utilizaca Hibernate Hibernate Junt Junt cm cm universide.hbm.xml universide.hbm.xml faz faz universide universide / / class class / / O O exige exige que que ca ca camp camp seja seja cria cria uma uma variavel variavel tip tip crrespndente crrespndente / / int int id_universide; id_universide; cnpj; cnpj; raza_scial; raza_scial; tip; tip; int int num_aluns; num_aluns; Set Set departaments departaments new new HashSet(); HashSet(); //mapeia //mapeia relacinament relacinament cm cm a a departament departament

50 Mapeament s Relacinaments.java / / O O exige exige que que ca ca variavel variavel existam existam s s mets mets get get e e set set / / / / O O relacinament relacinament <1--N> <1--N> cm cm a a departament departament é é feit feit atraves atraves cnjunt cnjunt de de departaments departaments / / Set Set getdepartaments() getdepartaments() departaments; departaments; setdepartaments(set setdepartaments(set departaments) departaments) this.departaments this.departaments departaments; departaments; adddepartaments(departament adddepartaments(departament departament) departament) departament.setid_universide(this); departament.setid_universide(this); departaments.add(departament); departaments.add(departament);

51 Mapeament s Relacinaments.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " <hibernate-mapping> <hibernate-mapping> <class <class name"br.mdel.bean." name"br.mdel.bean." table"universide"> table"universide"> O nme cluna chave estrangeira na classe <!-- <!-- Mapeament Mapeament Cleca Cleca de de Departaments Departaments --> --> <set <set name"departaments" name"departaments" inverse"true" inverse"true" lazy"true"> lazy"true"> <key <key clumn"id_universide" clumn"id_universide" /> /> <ne-t-many <ne-t-many class"br.mdel.bean.departament"/> class"br.mdel.bean.departament"/> </set> </set> </class> </class> </hibernate-mapping> </hibernate-mapping> Infrma a classe a qual pertence a cleçã de bjets

52 Mapeament s Relacinaments Departament.java package package br.mdel.bean; br.mdel.bean; br.mdel.bean.; br.mdel.bean.; br.mdel.bean.enderec; br.mdel.bean.enderec; / / Classe Classe Departament Departament - - Parte Parte integrante integrante esquema esquema necessari necessari a a utilizaca utilizaca Hibernate Hibernate Junt Junt cm cm departament.hbm.xml departament.hbm.xml faz faz departament departament / / class class Departament Departament / / O O exige exige que que ca ca camp camp seja seja cria cria uma uma variavel variavel tip tip crrespndente crrespndente / / int int id_departament; id_departament; nme; nme; id_universide; id_universide; // // mapeia mapeia relacinament relacinament cm cm a a universide universide Enderec Enderec id_enderec; id_enderec; // // mapeia mapeia relacinament relacinament cm cm a a enderec enderec / / O O exige exige que que ca ca variavel variavel existam existam s s mets mets get get e e set set / /

53 Mapeament s Relacinaments Departament.java / / O O relacinament relacinament <N--1> <N--1> cm cm a a universide universide é é feit feit atraves atraves bjet bjet id_universide id_universide classe classe / / getid_universide() getid_universide() id_universide; id_universide; setid_universide( setid_universide( id_universide) id_universide) this.id_universide this.id_universide id_universide; id_universide; / / O O relacinament relacinament <1--1> <1--1> cm cm a a enderec enderec é é feit feit atraves atraves bjet bjet id_enderec id_enderec classe classe Enderec Enderec / / Enderec Enderec getid_enderec() getid_enderec() id_enderec; id_enderec; setid_enderec(enderec setid_enderec(enderec id_enderec) id_enderec) this.id_enderec this.id_enderec id_enderec; id_enderec;

54 Mapeament s Relacinaments Departament.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " <hibernate-mapping> <hibernate-mapping> Cluna banc (chave estrangeira) <class <class name"br.mdel.bean.departament" name"br.mdel.bean.departament" table"departament"> table"departament"> <!-- <!-- Mapeament Mapeament --> --> <many-t-ne <many-t-ne name"id_universide" name"id_universide" class"br.mdel.bean." class"br.mdel.bean." clumn"id_universide" clumn"id_universide" /> /> <!-- <!-- Mapeament Mapeament Enderec Enderec --> --> <many-t-ne <many-t-ne name"id_enderec" name"id_enderec" class"br.mdel.bean.enderec" class"br.mdel.bean.enderec" clumn"id_enderec" clumn"id_enderec" unique"true" unique"true" /> /> </class> </class> </hibernate-mapping> </hibernate-mapping> Nã aceita valres repetis Nme atribut na classe Java

55 Mapeament s Relacinaments Enderec.java package package br.mdel.bean; br.mdel.bean; / / Classe Classe Enderec Enderec - - Parte Parte integrante integrante esquema esquema necessari necessari a a utilizaca utilizaca Hibernate Hibernate Junt Junt cm cm enderec.hbm.xml enderec.hbm.xml faz faz enderec enderec / / class class Enderec Enderec / / O O exige exige que que ca ca camp camp seja seja cria cria uma uma variavel variavel tip tip crrespndente crrespndente / / int int id_enderec; id_enderec; rua; rua; cep; cep;

56 Mapeament s Relacinaments Enderec.java / / O O exige exige que que ca ca variavel variavel existam existam s s mets mets get get e e set set / / int int getid_enderec() getid_enderec() id_enderec; id_enderec; setid_enderec(int setid_enderec(int id_enderec) id_enderec) this.id_enderec this.id_enderec id_enderec; id_enderec; getrua() getrua() rua; rua; setrua( setrua( rua) rua) this.rua this.rua rua; rua; getcep() getcep() cep; cep; setcep( setcep( cep) cep) this.cep this.cep cep; cep;

57 Mapeament s Relacinaments Enderec.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " <hibernate-mapping> <hibernate-mapping> <class <class name"br.mdel.bean.enderec" name"br.mdel.bean.enderec" table"enderec"> table"enderec"> <id <id name"id_enderec" name"id_enderec" clumn"id_enderec" clumn"id_enderec" type"integer"> type"integer"> <generatr <generatr class"sequence"> class"sequence"> <m <m name"sequence">enderec_id_enderec_seq</m> name"sequence">enderec_id_enderec_seq</m> </generatr> </generatr> </id> </id> <prperty <prperty name"rua" name"rua" type"string"/> type"string"/> <prperty <prperty name"cep" name"cep" type"string"/> type"string"/> </class> </class> </hibernate-mapping> </hibernate-mapping> O relacinament relacinament (1:1) (1:1) cm cm a a Departament Departament aparece aparece apenas apenas a a que que carrega carrega a a chave chave estrangeira. estrangeira.

58 Cnfiguraçã Hibernate Exempl 4. Arquivs de Cnfiguraçã

59 Cnfiguraçã Hibernate.cfg.xml URL de cnexã específica BD Define se s SQLs geras pel Hibernate devem u nã ser exibis <?xml <?xml versin'1.0' versin'1.0' encding'utf-8'?> encding'utf-8'?> <!DOCTYPE <!DOCTYPE hibernate-cnfiguratin hibernate-cnfiguratin PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Cnfiguratin Cnfiguratin DTD//EN" DTD//EN" " " <hibernate-cnfiguratin> <hibernate-cnfiguratin> <sessin-factry> <sessin-factry> <prperty <prperty name"hibernate.dialect"> name"hibernate.dialect"> rg.hibernate.dialect.pstgresqldialect</prperty> rg.hibernate.dialect.pstgresqldialect</prperty> <prperty <prperty name"cnnectin.driver_class"> name"cnnectin.driver_class"> rg.pstgresql.driver</prperty> rg.pstgresql.driver</prperty> <prperty <prperty name"cnnectin.url"> name"cnnectin.url"> jdbc:pstgresql://lcalhst:5432/universides</prperty> jdbc:pstgresql://lcalhst:5432/universides</prperty> <prperty <prperty name"cnnectin.username">admin</prperty> name"cnnectin.username">admin</prperty> <prperty <prperty name"cnnectin.passwrd">admin</prperty> name"cnnectin.passwrd">admin</prperty> <prperty <prperty name"shw_sql">true</prperty> name"shw_sql">true</prperty> <mapping <mapping resurce"br/mdel/bean/universide.hbm.xml"/> resurce"br/mdel/bean/universide.hbm.xml"/> <mapping <mapping resurce"br/mdel/bean/departament.hbm.xml"/> resurce"br/mdel/bean/departament.hbm.xml"/> <mapping <mapping resurce"br/mdel/bean/enderec.hbm.xml"/> resurce"br/mdel/bean/enderec.hbm.xml"/> <mapping <mapping resurce"br/mdel/bean/cnsultas.hbm.xml"/> resurce"br/mdel/bean/cnsultas.hbm.xml"/> </sessin-factry> </sessin-factry> </hibernate-cnfiguratin> </hibernate-cnfiguratin> Dialet SQL específic BD utiliza Nme classe driver JDBC BD Nme de usuári e senha cm qual Hibernate deve se cmunicar cm BD Arquivs de

60 Cnfiguraçã HibernateFactry.java package package br.testes.hibernate.persistence; br.testes.hibernate.persistence; rg.hibernate.; rg.hibernate.; rg.hibernate.cfg.; rg.hibernate.cfg.; class class HibernateFactry HibernateFactry static static HibernateFactry HibernateFactry factry; factry; static static Exceptin Exceptin exceptin; exceptin; SessinFactry SessinFactry sessinfactry; sessinfactry; Sessin Sessin sessin; sessin; static static try try factry factry new new HibernateFactry(); HibernateFactry(); catch( catch( Exceptin Exceptin e e ) ) exceptin exceptin e; e; HibernateFactry() HibernateFactry() thrws thrws Exceptin Exceptin setsessinfactry( setsessinfactry( new new Cnfiguratin().cnfigure().buildSessinFactry() Cnfiguratin().cnfigure().buildSessinFactry() ); ); setsessin( setsessin( getsessinfactry().pensessin() getsessinfactry().pensessin() ); );

61 Cnfiguraçã HibernateFactry.java static static HibernateFactry HibernateFactry getinstance() getinstance() thrws thrws Exceptin Exceptin if( if( factry factry!! null null ) ) factry; factry; else else Exceptin Exceptin e e new new Exceptin( Exceptin( exceptin exceptin ); ); //"Errr //"Errr initializing initializing hibernate.cfg.xml"); hibernate.cfg.xml"); thrw thrw e; e; SessinFactry SessinFactry getsessinfactry() getsessinfactry() sessinfactry; sessinfactry; setsessinfactry(sessinfactry setsessinfactry(sessinfactry sessinfactry) sessinfactry) this.sessinfactry this.sessinfactry sessinfactry; sessinfactry; Sessin Sessin getsessin() getsessin() sessin; sessin; setsessin(sessin setsessin(sessin sessin) sessin) this.sessin this.sessin sessin; sessin;

62 Cnfiguraçã Hibernate Exempl 4. Testes

63 Inserçã Teste.java package package br.testes.hibernate; br.testes.hibernate; rg.hibernate.sessin; rg.hibernate.sessin; br.mdel.bean.; br.mdel.bean.; br.testes.hibernate.persistence.hibernatefactry; br.testes.hibernate.persistence.hibernatefactry; rg.hibernate.transactin; rg.hibernate.transactin; / / Classe Classe Teste Teste - - Utiliza Utiliza Hibernate Hibernate persistir persistir s s na na universide universide / / class class Teste Teste save( save( umcnpj, umcnpj, umaraza_scial, umaraza_scial, umtip, umtip, int int umnum_aluns) umnum_aluns) try try Sessin Sessin sessin sessin HibernateFactry.getInstance().getSessin(); HibernateFactry.getInstance().getSessin(); Transactin Transactin tx tx sessin.begintransactin(); sessin.begintransactin(); universide universide new new (); (); universide.setcnpj(umcnpj); universide.setcnpj(umcnpj); universide.setraza_scial(umaraza_scial); universide.setraza_scial(umaraza_scial); universide.settip(umtip); universide.settip(umtip); universide.setnum_aluns(umnum_aluns); universide.setnum_aluns(umnum_aluns); sessin.save( sessin.save( universide universide ); ); tx.cmmit(); tx.cmmit(); catch catch (Exceptin (Exceptin e) e) System.ut.println( System.ut.println( e e ); );

64 Inserçã DepartamentTeste.java package package br.testes.hibernate; br.testes.hibernate; rg.hibernate.sessin; rg.hibernate.sessin; br.mdel.bean.; br.mdel.bean.; br.mdel.bean.departament; br.mdel.bean.departament; br.mdel.bean.enderec; br.mdel.bean.enderec; br.testes.hibernate.persistence.hibernatefactry; br.testes.hibernate.persistence.hibernatefactry; rg.hibernate.transactin; rg.hibernate.transactin; / / Classe Classe DepartamentTeste DepartamentTeste - - Utiliza Utiliza Hibernate Hibernate persistir persistir s s na na departament departament / / class class DepartamentTeste DepartamentTeste savedepartament( savedepartament( umnme, umnme, uma, uma, Enderec Enderec umenderec) umenderec) try try Sessin Sessin sessin sessin HibernateFactry.getInstance().getSessin(); HibernateFactry.getInstance().getSessin(); Transactin Transactin tx tx sessin.begintransactin(); sessin.begintransactin(); Departament Departament departament departament new new Departament(); Departament(); departament.setnme(umnme); departament.setnme(umnme); departament.setid_universide(uma); departament.setid_universide(uma); departament.setid_enderec(umenderec); departament.setid_enderec(umenderec); sessin.save( sessin.save( departament departament ); ); tx.cmmit(); tx.cmmit(); catch catch (Exceptin (Exceptin e) e) System.ut.println( System.ut.println( e e ); );

65 Inserçã EnderecTeste.java package package br.testes.hibernate; br.testes.hibernate; rg.hibernate.sessin; rg.hibernate.sessin; br.mdel.bean.enderec; br.mdel.bean.enderec; br.testes.hibernate.persistence.hibernatefactry; br.testes.hibernate.persistence.hibernatefactry; rg.hibernate.transactin; rg.hibernate.transactin; / / Classe Classe EnderecTeste EnderecTeste - - Utiliza Utiliza Hibernate Hibernate persistir persistir s s na na enderec enderec / / class class EnderecTeste EnderecTeste saveenderec( saveenderec( umarua, umarua, umcep) umcep) try try Sessin Sessin sessin sessin HibernateFactry.getInstance().getSessin(); HibernateFactry.getInstance().getSessin(); Transactin Transactin tx tx sessin.begintransactin(); sessin.begintransactin(); Enderec Enderec enderec enderec new new Enderec(); Enderec(); enderec.setrua(umarua); enderec.setrua(umarua); enderec.setcep(umcep); enderec.setcep(umcep); sessin.save( sessin.save( enderec enderec ); ); tx.cmmit(); tx.cmmit(); catch catch (Exceptin (Exceptin e) e) System.ut.println( System.ut.println( e e ); );

66 Teste de Inserçã Insert.java package package br.testes.hibernate; br.testes.hibernate; br.mdel.bean.; br.mdel.bean.; br.mdel.bean.departament; br.mdel.bean.departament; br.mdel.bean.enderec; br.mdel.bean.enderec; / / Classe Classe Insert Insert - - Utiliza Utiliza Hibernate Hibernate persistir persistir s s nas nas s s banc banc universides universides / / class class Insert Insert static static main([] main([] args) args) thrws thrws Exceptin Exceptin universide universide new new (); (); universide.setid_universide(2); universide.setid_universide(2); Enderec Enderec enderec enderec new new Enderec(); Enderec(); enderec.setid_enderec(3); enderec.setid_enderec(3); //Teste //Teste teste1 teste1 new new Teste(); Teste(); //teste1.save("1234", //teste1.save("1234", "UFRJ", "UFRJ", "a", "a", 30000); 30000); //Teste //Teste teste6 teste6 new new Teste(); Teste(); //teste6.save("4321", //teste6.save("4321", "UERJ", "UERJ", "a", "a", 20000); 20000);

67 Teste de Inserçã Insert.java //Teste //Teste teste7 teste7 new new Teste(); Teste(); //teste7.save("111", //teste7.save("111", "PUC "PUC Ri", Ri", "priva", "priva", 15000); 15000); //EnderecTeste //EnderecTeste teste3 teste3 new new EnderecTeste(); EnderecTeste(); //teste3.saveenderec("rua //teste3.saveenderec("rua A", A", " "); " "); //EnderecTeste //EnderecTeste teste4 teste4 new new EnderecTeste(); EnderecTeste(); //teste4.saveenderec("rua //teste4.saveenderec("rua B", B", " "); " "); //DepartamentTeste //DepartamentTeste teste2 teste2 new new DepartamentTeste(); DepartamentTeste(); //teste2.savedepartament("dcc", //teste2.savedepartament("dcc", universide, universide, enderec); enderec); DepartamentTeste DepartamentTeste teste5 teste5 new new DepartamentTeste(); DepartamentTeste(); teste5.savedepartament("mat", teste5.savedepartament("mat", universide, universide, enderec); enderec);

68 Teste de Seleçã cnsultas.hbm.xml <?xml <?xml versin"1.0"?> versin"1.0"?> <!DOCTYPE <!DOCTYPE hibernate-mapping hibernate-mapping PUBLIC PUBLIC "-//Hibernate/Hibernate "-//Hibernate/Hibernate Mapping Mapping DTD DTD 3.0//EN" 3.0//EN" " " <hibernate-mapping> <hibernate-mapping> <!-- <!-- Recupera Recupera ts ts as as s s --> --> <query <query name"s"> name"s"> <![CDATA[frm <![CDATA[frm uni uni rder rder by by uni.raza_scial]]> uni.raza_scial]]> </query> </query> <!-- <!-- Recupera Recupera nme nme seu seu cnpj cnpj --> --> <query <query name"prcnpj"> name"prcnpj"> <![CDATA[frm <![CDATA[frm uni uni where where uni.cnpj uni.cnpj :cnpj]]> :cnpj]]> </query> </query>

69 Teste de Seleçã cnsultas.hbm.xml <!-- <!-- Recupera Recupera s s departaments departaments de de uma uma seu seu cnpj cnpj --> --> <query <query name"departamentsprcnpj"> name"departamentsprcnpj"> <![CDATA[frm <![CDATA[frm Departament Departament dep, dep, uni uni where where dep.id_universide dep.id_universide uni.id_universide uni.id_universide and and uni.cnpj uni.cnpj :cnpj :cnpj rder rder by by dep.nme]]> dep.nme]]> </query> </query> <!-- <!-- Recupera Recupera enderec enderec de de um um departaments departaments seu seu nme nme e e cnpj cnpj universide universide a a qual qual pertence pertence --> --> <query <query name"enderecprdepartamentecnpj"> name"enderecprdepartamentecnpj"> <![CDATA[frm <![CDATA[frm Enderec Enderec enderec, enderec, Departament Departament dep, dep, uni uni where where enderec.id_enderec enderec.id_enderec dep.id_enderec dep.id_enderec and and dep.id_universide dep.id_universide uni.id_universide uni.id_universide and and uni.cnpj uni.cnpj :cnpj :cnpj and and dep.nme dep.nme :nme]]> :nme]]> </query> </query> </hibernate-mapping> </hibernate-mapping>

70 Teste de Seleçã Select.java package package br.testes.hibernate; br.testes.hibernate; rg.hibernate.sessin; rg.hibernate.sessin; br.testes.hibernate.persistence.; br.testes.hibernate.persistence.; br.mdel.bean.; br.mdel.bean.; br.mdel.bean.departament; br.mdel.bean.departament; br.mdel.bean.enderec; br.mdel.bean.enderec; java.util.list; java.util.list; java.util.arraylist; java.util.arraylist; java.util.iteratr; java.util.iteratr; / / Classe Classe Select Select - - Utiliza Utiliza Hibernate Hibernate selecinar selecinar s s nas nas s s banc banc universides universides chaman chaman as as cnsultas cnsultas nmeas nmeas n n arquiv arquiv Cnsultas.hbm.xml Cnsultas.hbm.xml / / class class Select Select static static main([] main([] args) args) try try Sessin Sessin sessin sessin HibernateFactry.getInstance().getSessin(); HibernateFactry.getInstance().getSessin(); / / Cnsultas Cnsultas Nmeas Nmeas / / catch catch (Exceptin (Exceptin e) e) System.ut.println(e); System.ut.println(e);

71 Teste de Seleçã Select.java / / Selecine Selecine ts ts as as s s rdenas rdenas em em rdem rdem alfabética alfabética de de sua sua razã razã scial/ scial/ rg.hibernate.query rg.hibernate.query query query sessin.getnamedquery("s"); sessin.getnamedquery("s"); List List result result query.list(); query.list(); ArrayList ArrayList lista lista new new ArrayList(); ArrayList(); Iteratr Iteratr it it result.iteratr(); result.iteratr(); while( while( it.hasnext() it.hasnext() ) ) uni uni () () it.next(); it.next(); lista.add(uni); lista.add(uni); System.ut.println( System.ut.println( "universide: "universide: " " + + uni.getraza_scial()); uni.getraza_scial()); / / Selecine Selecine a a razã razã scial scial cuj cuj cnj cnj 1234/ 1234/ rg.hibernate.query rg.hibernate.query query query sessin.getnamedquery("prcnpj").set("cnpj", sessin.getnamedquery("prcnpj").set("cnpj", "1234"); "1234"); List List result result query.list(); query.list(); ArrayList ArrayList lista lista new new ArrayList(); ArrayList(); Iteratr Iteratr it it result.iteratr(); result.iteratr(); while( while( it.hasnext() it.hasnext() ) ) uni uni () () it.next(); it.next(); lista.add(uni); lista.add(uni); System.ut.println( System.ut.println( "universide: "universide: " " + + uni.getraza_scial()); uni.getraza_scial());

72 Teste de Seleçã / / Selecine Selecine nme nme s s departaments departaments universide universide cuj cuj cnpj cnpj 1234/ 1234/ rg.hibernate.query rg.hibernate.query Select.java query query sessin.getnamedquery("departamentsprcnpj").set("cnpj","1234"); sessin.getnamedquery("departamentsprcnpj").set("cnpj","1234"); Iteratr Iteratr pairs pairs query.list().iteratr(); query.list().iteratr(); while( while( pairs.hasnext() pairs.hasnext() ) ) Object[] Object[] pair pair (Object[]) (Object[]) pairs.next(); pairs.next(); Departament Departament dep dep (Departament) (Departament) pair[0]; pair[0]; uni uni () () pair[1]; pair[1]; System.ut.println( System.ut.println( ": ": " " + + uni.getraza_scial()); uni.getraza_scial()); System.ut.println( System.ut.println( "Departament: "Departament: " " + + dep.getnme()); dep.getnme()); / / Selecine Selecine enderec enderec departaments departaments cuj cuj nme nme DCC DCC e e cnpj cnpj universide universide a a qual qual pertence pertence / / rg.hibernate.query rg.hibernate.query query query sessin.getnamedquery("enderecprdepartamentecnpj").set("nme", sessin.getnamedquery("enderecprdepartamentecnpj").set("nme", "DCC").set("cnpj","1234"); "DCC").set("cnpj","1234"); Iteratr Iteratr pairs pairs query.list().iteratr(); query.list().iteratr(); while( while( pairs.hasnext() pairs.hasnext() ) ) Object[] Object[] pair pair (Object[]) (Object[]) pairs.next(); pairs.next(); Enderec Enderec enderec enderec (Enderec) (Enderec) pair[0]; pair[0]; Departament Departament dep dep (Departament) (Departament) pair[1]; pair[1]; uni uni () () pair[2]; pair[2]; System.ut.println( System.ut.println( ": ": " " + + uni.getraza_scial()); uni.getraza_scial()); System.ut.println( System.ut.println( "Departament: "Departament: " " + + dep.getnme()); dep.getnme()); System.ut.println( System.ut.println( "Enderec: "Enderec: " " + + enderec.getrua()); enderec.getrua());

73 Organizaçã s Arquivs

74 Organizaçã s Arquivs

Aplicação Hibernate1 no NetBeans

Aplicação Hibernate1 no NetBeans Aplicaçã Hibernate1 n NetBeans Hibernate é um framewrk que frnece ferramentas para efetuar mapeament bjet/relacinal para Java. Mapeament bjet/relacinal é prcess de cnversã bidirecinal entre bjets e tabelas

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

Banco de Dados. DIEGO BARCELOS RODRIGUES dbarcelos@ifes.edu.br 2015 (2015/1) 1. Ifes - Campus Cachoeiro de Itapemirim

Banco de Dados. DIEGO BARCELOS RODRIGUES dbarcelos@ifes.edu.br 2015 (2015/1) 1. Ifes - Campus Cachoeiro de Itapemirim Ifes - Campus Cacheir de Itapemirim Banc de Dads DIEGO BARCELOS RODRIGUES dbarcels@ifes.edu.br 2015 (2015/1) 1 Agenda Breve revisã ds Cnceits Básics SQL (Linguagem de Cnsulta Estruturada) Subdivisões da

Leia mais

Linguagem SQL (Parte II)

Linguagem SQL (Parte II) 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 II Introdução

Leia mais

Manipulação de Banco de Dados com Java 1. Objetivos

Manipulação de Banco de Dados com Java 1. Objetivos Manipulação de Banco de Dados com Java 1. Objetivos Demonstrar os fundamentos básicos para a manipulação de banco de dados com Java; Apresentar a sintaxe de comandos SQL usados em Java. 2. Definições A

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

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

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

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

JDBC. Prof. Márcio Bueno (poonoite@marciobueno.com)

JDBC. Prof. Márcio Bueno (poonoite@marciobueno.com) JDBC Prof. Márcio Bueno (poonoite@marciobueno.com) JBDC Java Database Connectivity ou JDBC é um conjunto de classes e interfaces (API) escritas em Java que faz o envio de instruções SQL para qualquer banco

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

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

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

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

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos.

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. JDBC CRIANDO O BANCO DE DADOS: Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. CRIANDO O PROJETO JAVA PARA DESKTOP: Crie um projeto Java chamado Prograd Crie um pacote chamado

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

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

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

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. Definição do Esquema da Base de Dados. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática

SQL. Definição do Esquema da Base de Dados. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática SQL Definição do Esquema da Base de Dados Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática SQL - Esquema da base de dados Definição das tabelas Definição das chaves primárias Definição

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

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

Regras de Integridade. Profa. Késsia Marchi

Regras de Integridade. Profa. Késsia Marchi Regras de Integridade Restrições de Integridade Integridade refere-se a precisão ou correção de dados em um banco de dados; Restrição refere-se a impor uma condição para qualquer atualização. Antes de

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

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

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

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

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

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

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre BANCO DE DADOS BANCO DE DADOS Prof. Patrícia Lucas 3º Trimestre ROTEIRO PARA O 3º TRIMESTRE 1. O MySQL DDL SQL 1. Como funciona o MySQL 2. Como criar um banco de dados no MySQL 3. Como criar tabelas: comandos

Leia mais

Acesso a banco de dados

Acesso a banco de dados Acesso a banco de dados 1. Crie uma pasta chamada AcessoBD com as seguintes subpastas: Aplicativos, Drivers, AcessoMSACCESS, AcessoMySQL e AcessoSQLSERVER Exemplo 1: MS ACCESS 1. Crie um banco de dados

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

Linguagem de. Aula 07. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagem de. Aula 07. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagem de Prgramaçã IV -PHP Aula 07 Prfa Cristiane Kehler cristiane.kehler@canas.ifrs.edu.br Banc de Dads Manipulaçã de Banc de Dads HTML básic códigs cm páginas estáticas HTML + PHP códigs cm páginas

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

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

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

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

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

Aplicabilidade: visão geral

Aplicabilidade: visão geral CURSO BÁSICO SAXES 2 Aplicabilidade: visão geral BI Comércio Indústria nf-e Serviços Software house Enterprise Business Bus Banco financeiro Instituição Sindicato ERP html Casos 3 6 Customização: importação

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

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

Acesso a Bancos de Dados em Java (JDBC)

Acesso a Bancos de Dados em Java (JDBC) Acesso a Bancos de Dados em Java (JDBC) Jomi Fred Hübner Universidade Regional de Blumenau Departamento de Sistemas e Computação Roteiro Introdução Objetivo da JDBC Vantagens Visão geral do acesso a SGBDs

Leia mais

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Criando Banco de Dados, Tabelas e Campos através do HeidiSQL Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 2 Pedreiros da Informação Criando Banco de Dados, Tabelas e Campos através do HeidiSQL

Leia mais

Vamos falar de Hibernate?

Vamos falar de Hibernate? Vamos falar de Hibernate? Hibernate é um framework ORM (Object-Relationship Management) muito bacana que nos permite ter muita produtividade na manipulação de objetos a serem persistidos no banco de dados.

Leia mais

Projeto de Banco de Dados: Empresa X

Projeto de Banco de Dados: Empresa X Projeto de Banco de Dados: Empresa X Modelo de negócio: Empresa X Competências: Analisar e aplicar o resultado da modelagem de dados; Habilidades: Implementar as estruturas modeladas usando banco de dados;

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

AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS

AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS Na grande maioria dos sistemas, faz-se necessário utilizar informações que estão armazenadas em uma determinada

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

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário

Leia mais

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO.

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO. Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO. Robson Adão Fagundes http://robsonfagundes.blogspot.com/ Mini curso Desenvolvimento de aplicação

Leia mais

Consistem num conjunto de apontadores para instâncias especificas de cada relação.

Consistem num conjunto de apontadores para instâncias especificas de cada relação. Mecanismo usado para mais fácil e rapidamente aceder à informação existente numa base de dados. Bases de Dados de elevadas dimensões. Consistem num conjunto de apontadores para instâncias especificas de

Leia mais

AULA 07 HIBERNATE. Ao término desse capítulo você terá aprendido: Fundamentos do MVC Estrutura dos pacotes no NetBeans

AULA 07 HIBERNATE. Ao término desse capítulo você terá aprendido: Fundamentos do MVC Estrutura dos pacotes no NetBeans AULA 07 HIBERNATE Ao término desse capítulo você terá aprendido: Fundamentos do MVC Estrutura dos pacotes no NetBeans O JDBC é uma das maneiras mais diretas para desenvolver um aplicativo Java que interaja

Leia mais

DSS 08/09. Camada de Dados - JDBC. Aula 1. António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho.

DSS 08/09. Camada de Dados - JDBC. Aula 1. António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho. Universidade do Minho Departamento de Informática Camada de Dados - JDBC Aula 1 António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho.pt 2 Camada de Dados A camada

Leia mais

EXERCÍCIOS PRÁTICOS. Banco de Dados

EXERCÍCIOS PRÁTICOS. Banco de Dados EXERCÍCIOS PRÁTICOS Banco de Dados Introdução ao uso do SQL Structured Query Language, considerando tanto DDL Data Definition Language quanto DML Data Manipulation Language. Banco de Dados selecionado:

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

Comandos DDL. id_modulo = id_m odulo

Comandos DDL. id_modulo = id_m odulo Comandos DDL Estudo de Caso Controle Acadêmico Simplificado Uma escola contém vários cursos, onde cada aluno possui uma matricula num determinado curso. Estes cursos, por sua vez, possuem módulos, aos

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

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

(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

2º Passo Criar a conexão via ODBC (Object DataBase Conection)

2º Passo Criar a conexão via ODBC (Object DataBase Conection) Prjet de Sexta-feira: Prfessra Lucélia 1º Pass Criar banc de dads u selecinar banc de dads. Ntas: Camps nas tabelas nã pdem cnter caracteres acentuads, especiais e exclusivs de línguas latinas. Nã há necessidade

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

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

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

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

Fundamentos do Sistema Gerenciador de Banco de Dados

Fundamentos do Sistema Gerenciador de Banco de Dados Fundamentos do Sistema Gerenciador de Banco de Dados Cláudio Luís V. Oliveira Janeiro de 2010 Definição "Um sistema cujo objetivo principal é gerenciar o acesso, a correta manutenção e a integridade dos

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

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

Curso de Java. Acesso a banco de dados através de JDBC. Todos os direitos reservados Klais Curso de Java Acesso a banco de dados através de JDBC Todos os direitos reservados Klais Java e SGBD s SQL é a linguagem padrão para acesso a banco de dados e se estabeleceu como tal no mercado. SQL no

Leia mais

JDBC Java Database Connectivity

JDBC Java Database Connectivity 5 JDBC Java Database Connectivity Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Trabalhar com bancos de dados em aplicações web em JSP através das classes

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

Bases de Dados 1º semestre

Bases de Dados 1º semestre DepartamentodeEngenhariaInformática 2008/2009 BasesdeDados1ºsemestre Lab1:Introduçãoaoambiente O ficheiro create bank.sql contém um conjunto de instruções SQL para criar a base de dadosdeexemploilustradanafigura1.

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

Curso: Desenvolvimento Java

Curso: Desenvolvimento Java Exercícios de Fixação 10 Aplicações com SGBD Exercícios resolvidos Para realizar estes exercícios, iremos utilizar o projeto Aula01. Crie neste projeto um pacote de nome banco. Todos os exercícios deverão

Leia mais

SQL (STRUCTUREDQUERY LANGUAGE)

SQL (STRUCTUREDQUERY LANGUAGE) BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SQL (STRUCTUREDQUERY

Leia mais

SQL: Definição de tabelas, Modificações à Base de Dados

SQL: Definição de tabelas, Modificações à Base de Dados SQL: Definição de tabelas, Modificações à Base de Dados Fernando Lobo Base de Dados, Universidade do Algarve 1 / 24 Definição do esquema da base de dados O esquema da BD é composto pelas definições de

Leia mais

Criar uma aplicação JPA2 com EclipseLink e H2

Criar uma aplicação JPA2 com EclipseLink e H2 Criar uma aplicação JPA2 com EclipseLink e H2 1) Criar uma aplicação Java no NetBeans. File > New Project > Java, Java Application > Project name: JPA2 Finish. 2) Acrescentar ao Projeto NetBeans a biblioteca

Leia mais

Sistemas de Informação

Sistemas de Informação Sistemas de Informação Rules and Triggers André Restivo Sistemas de Informação 2006/07 Rules e Triggers Nem todas as restrições podem ser definidas usando os mecanismos que estudamos anteriormente: - CHECK

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Java Database Connectivity (JDBC) Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Curso PHP Aula 08. Bruno Falcão brunogfalcao@gmail.com

Curso PHP Aula 08. Bruno Falcão brunogfalcao@gmail.com + Curso PHP Aula 08 Bruno Falcão brunogfalcao@gmail.com + Roteiro Conectividade com BD SQL + SQL Structured Query Language. Padrão para interagir com banco de dados relacionais. + Banco de dados Um banco

Leia mais

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes Banco de dados 1 Linguagem SQL DDL e DML Professor: Victor Hugo L. Lopes Agenda: Introdução à linguagem de dados; DDL; DML; CRUD; Introdução à linguagem SQL. 2 Por que precisamos da linguagem SQL? A algebra

Leia mais

JDBC (Java Database Connectivity) Padrão de Projeto DAO (Data Access Object) Roteiro para instalação do banco de dados e do driver JDBC

JDBC (Java Database Connectivity) Padrão de Projeto DAO (Data Access Object) Roteiro para instalação do banco de dados e do driver JDBC JDBC (Java Database Connectivity) Padrão de Projeto DAO (Data Access Object) Roteiro para instalação do banco de dados e do driver JDBC Java Database Connectivity Provê acesso SQL ao banco de dados Principais

Leia mais

BANKSYNC ALGORITMO PARA GERAÇÃO DO CÓDIGO DE BARRAS (DLL)

BANKSYNC ALGORITMO PARA GERAÇÃO DO CÓDIGO DE BARRAS (DLL) OBJETIVO O algritm para geraçã d códig de barras (dll) utilizad n SAP Business One (SBO) deve ser instalad e cnfigurad adequadamente para pssibilitar a visualizaçã e impressã de blets lcalmente, assim

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

Persistência de Classes em Tabelas de Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos

Leia mais

Drive MySql de conexão para Eclipse

Drive MySql de conexão para Eclipse Drive MySql de conexão para Eclipse de Setembro de 0 Olá, neste artigo iremos focar em como utilizar o drive de conexão do Mysql na IDE eclipse. Veremos passo-a-passo como instalar, o que é uma coisa muito

Leia mais

Conteúdo O que é?... 4 Histórico... 4 Onde Baixar?... 4 Diferença entre Firebird e o Interbase... 4 Como instalar?... 4 Instalando o Ibexpert...

Conteúdo O que é?... 4 Histórico... 4 Onde Baixar?... 4 Diferença entre Firebird e o Interbase... 4 Como instalar?... 4 Instalando o Ibexpert... Apostila FIREBIRD 1 Firebird Equipe: BARBARA CAROLINE SOUZA DE OLIVEIRA Nº 04 GUILHERME ROBERTO PINTO DE SOUZA Nº 16 JOSÉ ROSA MARTINS NETO Nº 22 RAFAEL ALVES DE SOUSA Nº 36 WELLINGTON COSTA SANTOS OLIVEIRA

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

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados

Leia mais

Exercícios de Revisão Java Básico

Exercícios de Revisão Java Básico Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1

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

Java & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia

Java & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia Java & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia Sistemas de Informação Ling.Prog.V Prof. Roberto Couto Lima Fonte: Curso Java Prof. Fabricio Leonard Leopoldino (Universo)

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

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 9 JDBC (Java Database Connectivity) Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados

Leia mais

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) Linguagem comercial para BD relacional padrão ISO desde a década de 80 SQL (86); SQL-2 (92); SQL-3 (99) e SQL:2003 não é apenas uma linguagem de consulta! como o nome sugere...

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

Desvendando o Hibernate

Desvendando o Hibernate Passos Iniciais Desvendando o Hibernate 1. Repetir os passos do tutorial "CRUD com Hibernate" 2. Adicionar o driver JDBC do banco Esquematizando Fontes dos Arquivos WEB-INF\classes\hibernate.cfg.xml

Leia mais

INTRODUÇÃO. No entanto, o que pode ser considerado um produto (resultado) da criação de BDs?

INTRODUÇÃO. No entanto, o que pode ser considerado um produto (resultado) da criação de BDs? BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Um Banco

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